如何解决对于复杂的计算,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 举报,一经查实,本站将立刻删除。