对于复杂的计算,getCalculatedValue,getFormattedValue都返回0

问题描述

我有一个xlsx文件,该文件使用多个条件查找来产生最终值。我可以使用PHPSpreadsheet向电子表格写入数据,没有问题。我还可以从电子表格中读取任何静态值,以及使用PHPSpreadsheet进行的大多数公式/计算。

但是,但是我需要的最终值使用了一系列复杂的条件查找,无论我做什么,我都会为读写getCalculatedValue()和getFormattedValue()获得0值。

下面是代码和输出的摘录:

<?php 
require_once("vendor/autoload.php"); 
use PhpOffice\PhpSpreadsheet\Spreadsheet;
use PhpOffice\PhpSpreadsheet\Reader\Xlsx;

$reader = new \PhpOffice\PhpSpreadsheet\Reader\Xlsx();
$spreadsheet = $reader->load("/myfile.xlsx");
$sheet = $spreadsheet->getActiveSheet();

$v = $sheet->getCell('B19')->getValue();
$fv = $sheet->getCell('B19')->getFormattedValue();
$cv = $sheet->getCell('B19')->getCalculatedValue();

echo $v;//=N21
echo $fv;//0.00
echo $fv;//0
var_dump($v);//string(4) "=N21"
var_dump($fv);//string(4) "0.00"
var_dump($cv);//float(0) 

所以我的问题:

  • 可以输出到PHP的计算的复杂性是否受到限制?
  • Posisbel解决方案-我可以将计算结果写入新单元格中的静态值,然后读取该静态值(不会出现问题)。

谢谢

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...