Perl 输出内容到 excel

可以参考:  http://search.cpan.org/~jmcnamara/Spreadsheet-WriteExcel/lib/Spreadsheet/WriteExcel.pm

  1. 使用Spreadsheet::WriteExcel这个模块,如果能很好的使用这个模块,从perl输出到excel的操作也就没什么问题了。利用它的几个函数,就可以方便地把数据写入到Excel相应的位置中,同时还可以设置单元格的格式,如字体大小,单元格大小,是否加粗,底色等等。这一篇为基础篇.
  2. 通过命令:perldoc perllocal来查看环境中装了perl的哪些模块,看看是否有这个模块。
  3. 用perl创建excel表格
     
    #!/usr/bin/perl 
    use strict; 
    use Spreadsheet::WriteExcel;  
    #************生成Excel文档****************  
    my $xl = Spreadsheet::WriteExcel->new("TEST.xls");  #引号中为生成的excel的名称,瘦箭头后面都是模块Spreadsheet::WriteExcel中的方面。
    #生成Excel表  
    my $xlsheet = $xl->add_worksheet("TestSheet");  #引号中为excel工作簿中表的名称
    $xlsheet->freeze_panes(1, 0); #冻结首行
  4. 输出的格式设置
    #添加格式(表头)
    my $rptheader = $xl->add_format(); # Add a format
    $rptheader->set_bold(); #加粗
    $rptheader->set_size('18'); #字体大小
    $rptheader->set_align('center'); #居中
    $rptheader->set_font('BrowalliaUPC'); #字体
    #添加格式(表内容)
    my $normcell = $xl->add_format(); # Add a format
    $normcell->set_size('11');
    $normcell->set_align('center');
    $normcell->set_bg_color('21'); #背景色
    #设置列的宽度
    $xlsheet->set_column('A:A',12);
    $xlsheet->set_column('B:B',10);
    $xlsheet->set_column('C:C',14);
     
  5. 输出
    1. #写表头(格式是使用上面添加的表头格式) 
      $xlsheet->write("A1","Number", $rptheader); #格式为(单元格位置,写入的内容,格式)
      $xlsheet->write("B1","Name",$rptheader);
      $xlsheet->write("C1","Language",$rptheader);
      #写内容(格式是使用上面添加的表内容格式)
      $xlsheet->write("A2","1", $normcell);
      $xlsheet->write("B2","Test",$normcell);
      $xlsheet->write("C2","Perl",$normcell);
      #关闭操作excel的对象.
      $xl->close();

 

posted @ 2017-05-12 17:42  DavidWei0504  阅读(2802)  评论(0编辑  收藏  举报