perl write excel

在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 
  2、使用读取EXCEL文件:
  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.    
  3、生成EXCEL文件:

  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 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;  
4、合并单元格(cell)
my $format = $workbook->add_format( border => 6, valign => 'vcenter', align => 'center', );$worksheet->merge_range('B3:D4', 'Vertical and horizontal', $format);

5、设定列宽
$worksheet->set_column($begin_loc,$end_loc,30);

6、设定格式,不改单元格内容
$worksheet->write_blank($iR,$iC,$format);

7、关闭表格
 $workbook->close();
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值