Perl中的电子表格::ParseExcel模块有问题吗?
我是perl新手,刚刚开始使用模块Spreadsheet::ParseExcel。 我不想在我正在使用的Excel工作表中写入任何内容。 脚本基本上应该在Excel工作表中运行,并逐行打印值。 我有大约250行和3列。 因此,输出必须类似于:Perl中的电子表格::ParseExcel模块有问题吗?,perl,perl-module,Perl,Perl Module,我是perl新手,刚刚开始使用模块Spreadsheet::ParseExcel。 我不想在我正在使用的Excel工作表中写入任何内容。 脚本基本上应该在Excel工作表中运行,并逐行打印值。 我有大约250行和3列。 因此,输出必须类似于: Glendale Academy Mark 40% Glendale Academy Tom 60% ..... ..... ..... 在终点站 我使用这个窗口(我应该考虑 Win32::OLE )和 Win32
Glendale Academy Mark 40%
Glendale Academy Tom 60%
.....
.....
.....
在终点站
我使用这个窗口(我应该考虑<代码> Win32::OLE )和<代码> Win32::OLE::const“微软Excel”< />代码(应该是表格的格式?.xLS,.xLSx,.cv) 以下是我迄今为止所做的工作: 在浏览了这个网站上的很多脚本之后,我认为使用“拆分”是最简单的。这非常简单,因为它是excel,我不知道如何使用它
到目前为止,我的剧本是这样的use strict;
use warnings;
use Spreadsheet::ParseExcel;
my $reader = Excel::Write::XLSX->new(); # I am sure something is wrong here
my $workbook = Spreadsheet::WriteExcel->new('Draft.xls');
#my $workbook = $reader->read_file( 'Draft.xlsx' );
if ( !defined $workbook ) {
die $reader->error(), "\n";
}
for my $worksheet ( $workbook->worksheets() ) {
my $sheetname = $worksheet->name();
print "Sheet = $sheetname\n";
while ( my $row = $worksheet->next_row() ) {
while ( my $cell = $row->next_cell() ) {
my $row = $cell->row();
my $col = $cell->col();
my $value = $cell->value();
print " Cell ($row, $col) = $value\n";
}
}
}
任何形式的帮助都将受到极大的感谢;
已经坚持了一个星期了……在最初的计划中有一些错误:
Excel::Write::XLSX
,其中包含打字错误,未导入,与电子表格::解析Excel或读取数据无关电子表格::WriteExcel
next\u row
和next\u cell
)Row, Col = (0, 0)
Value = Glendale Academy
Unformatted = Glendale Academy
Row, Col = (0, 1)
Value = Mark
Unformatted = Mark
Row, Col = (0, 2)
Value = 40%
Unformatted = 0.4
Row, Col = (1, 0)
Value = Glendale Academy
Unformatted = Glendale Academy
Row, Col = (1, 1)
Value = Tom
Unformatted = Tom
Row, Col = (1, 2)
Value = 60%
Unformatted = 0.6
但是,我如何将输出格式化为流线型,就像我希望所有单元格值都打印在一行中一样。像Glendale Academy Mark 40%一样,我需要指定行和列范围吗?或者有没有一种有效的方法来实现这一点!!!John,你能告诉我如何将最后一列值与阈值(例如35%)进行比较吗该栏中的值,比如Mark有40%,Tom有60%,Jenny有70%,我想将其与35%的阈值进行比较,并给出他们是通过还是失败的判断?有什么想法吗。。。。
Row, Col = (0, 0)
Value = Glendale Academy
Unformatted = Glendale Academy
Row, Col = (0, 1)
Value = Mark
Unformatted = Mark
Row, Col = (0, 2)
Value = 40%
Unformatted = 0.4
Row, Col = (1, 0)
Value = Glendale Academy
Unformatted = Glendale Academy
Row, Col = (1, 1)
Value = Tom
Unformatted = Tom
Row, Col = (1, 2)
Value = 60%
Unformatted = 0.6