php电子表格-获取值而不是公式



我正在尝试使用php电子表格上传电子表格。

我只是想把我在开放式办公室打开电子表格时看到的每个单元格的值复制到数据库中

问题是在其中一列中,值是计算出来的,尽管我阅读了php电子表格文档,但我找不到如何做到这一点。

如果我用open Office打开电子表格,我可以看到的值只是一个类似9.12的浮点值,但在你输入公式的输入栏中,值是:

=VLOOKUP(A2,'file:///Folder for Tenders & Information required/October19/All Group Pricing Oct 2019 working.xlsx'#$'PI''s'.$A$1:$Y$1048576,25,0)

如果我运行这个代码:

$reader = IOFactory::createReader('Xlsx');
$spreadsheet = $reader->load($inputFileName2);
$worksheet = $spreadsheet->getActiveSheet();
$value = $spreadsheet->getActiveSheet()->getCell('F2')->getCalculatedValue();
echo $value;

这就产生了错误:

Fatal error: Uncaught PhpOfficePhpSpreadsheetCalculationException: PI!F2 -> Formula Error:

如果我将getCalculatedValue((更改为getValue((

我得到:

=VLOOKUP(A2,'[1]PI''s'!$A:$Y,25,FALSE)

当我在open Office中打开电子表格时,我究竟是如何获得可以看到的值的?

谢谢:-(

您正在寻找:

$spreadsheet->getActiveSheet()->getCell('F2')->getOldCalculatedValue()

但要小心,不能保证这个值是正确的,甚至根本不存在。这完全取决于文件是如何编写的。

最新更新