我正在使用Laravel 5.4和PHPExcel 1.8.1。
在我的代码中,我添加了以下公式来计算该行的增值税:
$vatPercent = $invoiceManager->getVatPercent($iData);
$worksheet->setCellValueByColumnAndRow(22, $row, sprintf('=V%d*%f', $row, ($vatPercent / 100)));
$vatPercent
=整数,例如20。
这将在本地生成此excel公式:
=V7*0,19
但是当我部署并想导出相同的excel(实时数据和本地数据)时,出现以下错误:
PHPExcel_Calculation_Exception:Verkäufe!W7->公式错误: 出乎意料 /var/app/current/vendor/phpoffice/phpexcel/Classes/PHPExcel/Cell.php:291
我的第一个猜测是这是由于语言版本造成的
4.6.4。将公式写入单元格
在Excel文件中,公式始终按其显示的方式存储 用英文版的Microsoft Office Excel和PHPExcel处理 内部所有公式都采用这种格式。这意味着以下 规则成立:
•小数点分隔符为'。 (句号)
•函数参数分隔符为','(逗号)
•矩阵行分隔符为';' (分号)
•必须使用英文功能名称
这与Microsoft Office Excel的哪种语言版本无关 可能已用于创建Excel文件。
所以我尝试了以下失败的尝试:
$vat = $invoiceManager->getVatPercent($iData);
$vatPercent = number_format(((float) $commissionVat) / 100, 2, '.', '');
$worksheet->setCellValueByColumnAndRow(22, $row, sprintf('=V%d*%f', $row, $vatPercent));
有没有人知道还有什么问题?
谢谢迈克尔