用Perl操作Excel文档的例子

发布时间:2019-09-30编辑:脚本学堂
用Perl操作Excel文档的例子,有需要的朋友可以参考下。在Linux或者Unix上操作(生成)Excel,CPAN上提供了Spreadsheet::WriteExcel 和 Spreadsheet::ParseExcel这两个模块。

用Perl操作Excel文档的例子,有需要的朋友可以参考下。

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;