在Linux或者Unix上操作(產生)Excel,CPAN上提供了Spreadsheet::WriteExcel 和 Spreadsheet::ParseExcel這兩個模組。
下面就來看看 Spreadsheet::WriteExcel 和 Spreadsheet::ParseExcel的使用方法。
首先,要在伺服器上安裝相應的模組。
安裝 Excel 模組的 PPM 命令
複製代碼 代碼如下:
ppm> install OLE::Storage_Lite
ppm> install Spreadsheet::ParseExcel
ppm> install Spreadsheet::WriteExcel
來看兩個例子吧。
例1:讀取excel檔案
複製代碼 代碼如下:
#!/usr/bin/perl -w
use strict;
use Spreadsheet::ParseExcel;
my $parser = Spreadsheet::ParseExcel->new();
my $workbook = $parser->Parse('Book1.xls');
for my $worksheet ( $workbook->worksheets() ) {
my ( $row_min, $row_max ) = $worksheet->row_range();
my ( $col_min, $col_max ) = $worksheet->col_range();
for my $row ( $row_min .. $row_max ) {
for my $col ( $col_min .. $col_max ) {
my $cell = $worksheet->get_cell( $row, $col );
next unless $cell;
print "Row, Col = ($row, $col)\n";
print "Value = ", $cell->value(), "\n";
print "Unformatted = ", $cell->unformatted(), "\n";
print "\n";
}
}
}
例2:產生EXCEL檔案
複製代碼 代碼如下:
#!/usr/bin/perl -w
use Spreadsheet::WriteExcel;
# 建立一個新的EXCEL檔案
my $workbook = Spreadsheet::WriteExcel->new('test.xls');
# 添加一個工作表
$worksheet = $workbook->add_worksheet();
# 建立一個樣式
$format = $workbook->add_format(); # Add a format
$format->set_bold();#設定字型為粗體
$format->set_color('red');#設定儲存格前景色彩為紅色
$format->set_align('center');#設定儲存格置中
#使用行號及列號,向儲存格寫入一個格式化和末格式化的字串
$col = $row = 0;
$worksheet->write($row, $col, 'Hi Excel!', $format);
$worksheet->write(1, $col, 'Hi Excel!');
# 使用儲存格名稱(例:A1),向儲存格中寫一個數字。
$worksheet->write('A3', 1.2345);
$worksheet->write('A4', '=SIN(PI()/4)');
exit;