1

我的 Perl 脚本正在生成一个 excel 工作表。

输出

P   MON #N/A    XML                 xx  ##  c   2   Yes                                         
B   TUE #N/A    TXT                 xx  ##  b   1   No                                          
D   SUN #N/A    EXE                 xx  ##  a   1   No                                          

我希望 excel 工作表的以不同的颜色突出显示

我关注了这个网站

但我不知道使用 Perl 为不同的列设置不同的颜色。

4

1 回答 1

3

您需要将该set_column()方法与具有该bg_color集合的格式对象一起使用。这是一个小的工作示例。

#!/usr/bin/perl

use strict;
use warnings;
use Spreadsheet::WriteExcel;

my $workbook  = Spreadsheet::WriteExcel->new( 'columns.xls' );
my $worksheet = $workbook->add_worksheet();

# Add some formats with background colors.
my $format1   = $workbook->add_format( bg_color => 'yellow' );
my $format2   = $workbook->add_format( bg_color => 0x32 );

# Format column A with a background color of yellow.
$worksheet->set_column('A:A', undef, $format1);

# Format column c with a new width and light green.
$worksheet->set_column('C:C', 30, $format2);


# Add some data to the worksheet.
my $headings = [ 'Column 1', 'Column 2', 'Column 3' ];
my $data = [
    [ 2, 3, 4, 5, 6, 7 ],
    [ 1, 4, 5, 2, 1, 5 ],
    [ 3, 6, 7, 5, 4, 3 ],
];

$worksheet->write( 'A1', $headings );
$worksheet->write( 'A2', $data );

__END__

这会给你这样的输出:

在此处输入图像描述

于 2012-05-10T08:21:41.663 回答