在使用perl编写excel时,如何将精度设置为2



我需要使用perl在excel文件中写入一些nos。对于ex,设nos为10、11.25、6.15。

我对11.25和6.15没有意见,因为它们都是按原样写的。但我想把10写成10.00

我的代码是:

my $Amountformat = $workbook1->add_format();
my $Amountformat->set_num_format(0x02);
$worksheet1->write_number($row,$col,$Amount,$Amountformat);

在这样做的时候,我在header.pl的未定义值上得到了错误"不能调用方法"set_num_format"">

我试过

my $Amountformat->set_num_format('0x02'); and 
my $Amountformat->set_num_format("0x02"); 

但我还是犯了同样的错误。

我的头文件使用

Spreadsheet::ParseExcel;
use Spreadsheet::WriteExcel;

由于我是perl的新手,我无法理解错误的原因。你能帮我解决这个错误吗,或者指导我一些替代方法,我可以用它在excel文件中把10写成10.00。

提前感谢。。。

这里的问题是,当您调用set_num_format时,您正在用my重新声明$AmountFormatmy $AmountFormat的第二次使用创建了一个与旧变量相同的新的未定义变量。移除第二个my,它应该可以工作。

您还应该添加

use strict;
use warnings;

以阻止Perl允许这种情况发生。

最新更新