使用Spreadsheet :: WriteExcel将数据导入工作表时忽略Excel错误

时间:2014-06-18 12:48:23

标签: perl perl-module

我正在编写一个Perl脚本来通过从MySQL表中假脱机来生成excel报告。我的脚本工作正常,但是在最终报告中我在其中一列中看到number stored as text error。实际上该列有数字但附加美元($)符号。
是否有任何方法可以在perl脚本本身中处理此错误。

错误截图:

enter image description here

1 个答案:

答案 0 :(得分:2)

听起来像你应该将值写为数字,但格式化为美元金额。

它看起来像这样。

my $num = $workbook->add_format();
$num->set_num_format('$0.00');

然后,当您实际设置值时:

$workbook->write($row, $col, $value, $num);

或者,您可以格式化整个列,这样您就可以使用write_row,而无需在每次写入时明确声明格式。

$workbook->set_column($from_col, $thru_col, $width, $num);

另外,对于它的价值,Excel::Writer::XLSXSpreadsheet::WriteExcel的新版本。