如何解决Excel :: Writer :: XLSX在公式中添加了意外的@
我正在使用Excel::Writer::XLSX
use Excel::Writer::XLSX;
my $workbook = Excel::Writer::XLSX->new( "test.xlsx" );
my $worksheet = $workbook->add_worksheet();
$worksheet->write( 'A1',"4");
$worksheet->write( 'A2',"=ERF.PRECISE(A1/SQRT(2))");
但是当我打开Excel工作表时,我可以在单元格中看到
A2:
=@ERF.PRECISE(A1/SQRT(2))
@
来自哪里?
解决方法
代替-
$worksheet->write( 'A2',"=ERF.PRECISE(A1/SQRT(2))");
使用以下方法:
$worksheet->write( 'A2',"=_xlfn.ERF.PRECISE(A1/SQRT(2))");
查看the documentation for formulas for Excel 2010 and later。
完整脚本:
#!/usr/bin/perl
use strict;
use warnings;
use Excel::Writer::XLSX;
my $workbook = Excel::Writer::XLSX->new( "test.xlsx" );
my $worksheet = $workbook->add_worksheet();
$worksheet->write( 'A1',"4");
$worksheet->write( 'A2',"=_xlfn.ERF.PRECISE(A1/SQRT(2))");
$workbook->close();
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。