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

php电子表格-获取值而不是公式,php,excel,phpspreadsheet,Php,Excel,Phpspreadsheet,我正在尝试使用PHPSReadSheet上传电子表格 我只想将在open office中打开电子表格时看到的每个单元格的值复制到数据库中 问题出在其中一列中,该值是经过计算的,尽管阅读了phpspreadsheet文档,但我不知道如何执行此操作 如果我使用open Office打开电子表格,我可以看到的值只是一个类似9.12的浮点值,但在输入栏中键入公式时,该值为: =VLOOKUP(A2,'file:///Folder for Tenders & Information require

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

我只想将在open office中打开电子表格时看到的每个单元格的值复制到数据库中

问题出在其中一列中,该值是经过计算的,尽管阅读了phpspreadsheet文档,但我不知道如何执行此操作

如果我使用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 PhpOffice\PhpSpreadsheet\Calculation\Exception: PI!F2 -> Formula Error:
如果我将getCalculatedValue()更改为getValue()

我得到:

    =VLOOKUP(A2,'[1]PI''s'!$A:$Y,25,FALSE)
当我在open Office中打开电子表格时,我究竟如何才能获得所能看到的值

谢谢:-)

您正在寻找:

$spreadsheet->getActiveSheet()->getCell('F2')->getOldCalculatedValue()
但要小心,不能保证该值是正确的,甚至根本不存在。这完全取决于文件是如何编写的