操作excel的perl模块

 CPAN上提供了Spreadsheet::WriteExcel 和 Spreadsheet::ParseExcel这两个模块。下面我们就来看看Spreadsheet::WriteExcel 和 Spreadsheet::ParseExcel的使用方法:

在Linux或者Unix上操作(生成)Excel,怎么说都是比较困难的困难的事情。但是有cpan,困难迎刃而解了!CPAN上提供了Spreadsheet::WriteExcel 和 Spreadsheet::ParseExcel这两个模块。下面我们就来看看 Spreadsheet::WriteExcel 和 Spreadsheet::ParseExcel的使用方法:

1、首先,我们要在服务器上安装相应的模块

安装 Excel 模块的 PPM 命令

Java代码 复制代码  收藏代码
  1. ppm> install OLE::Storage_Lite   
  2. ppm> install Spreadsheet::ParseExcel   
  3. ppm> install Spreadsheet::WriteExcel  
ppm> install OLE::Storage_Lite
ppm> install Spreadsheet::ParseExcel
ppm> install Spreadsheet::WriteExcel

 2、使用读取EXCEL文件:

Ruby代码 复制代码  收藏代码
  1. #!/usr/bin/perl -w   
  2.   
  3.    use strict;   
  4.    use Spreadsheet::ParseExcel;   
  5.   
  6.    my $parser   = Spreadsheet::ParseExcel->new();   
  7.    my $workbook = $parser->Parse('Book1.xls');   
  8.   
  9.    for my $worksheet ( $workbook->worksheets() ) {   
  10.   
  11.        my ( $row_min$row_max ) = $worksheet->row_range();   
  12.        my ( $col_min$col_max ) = $worksheet->col_range();   
  13.   
  14.        for my $row ( $row_min .. $row_max ) {   
  15.            for my $col ( $col_min .. $col_max ) {   
  16.   
  17.                my $cell = $worksheet->get_cell( $row$col );   
  18.                next unless $cell;   
  19.   
  20.                print "Row, Col    = ($row, $col)\n";   
  21.                print "Value       = "$cell->value(),       "\n";   
  22.                print "Unformatted = "$cell->unformatted(), "\n";   
  23.                print "\n";   
  24.            }   
  25.        }   
  26.    }  
 #!/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";
            }
        }
    }

 3、生成EXCEL文件:

 

Ruby代码 复制代码  收藏代码
  1. #!/usr/bin/perl -w   
  2.   
  3. use Spreadsheet::WriteExcel;   
  4.   
  5.  # 创建一个新的EXCEL文件   
  6.  my $workbook = Spreadsheet::WriteExcel->new('test.xls');   
  7.   
  8.  # 添加一个工作表   
  9.  $worksheet = $workbook->add_worksheet();   
  10.   
  11.  #  新建一个样式   
  12.  $format = $workbook->add_format(); # Add a format   
  13.  $format->set_bold();#设置字体为粗体   
  14.  $format->set_color('red');#设置单元格前景色为红色   
  15.  $format->set_align('center');#设置单元格居中   
  16.   
  17. #使用行号及列号,向单元格写入一个格式化和末格式化的字符串   
  18.  $col = $row = 0;   
  19.  $worksheet->write($row$col'Hi Excel!'$format);   
  20.  $worksheet->write(1,    $col'Hi Excel!');   
  21.   
  22.  # 使用单元格名称(例:A1),向单元格中写一个数字。   
  23.  $worksheet->write('A3', 1.2345);   
  24.  $worksheet->write('A4''=SIN(PI()/4)');   
  25.  exit;   

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值