用phpexcel从其他表中读取公式
试图维护一些旧的灰尘代码,我在一个导入symfony命令中面临phpexcel的问题。
看起来,库不能正确地计算出与活动工作表相同文档的另一页链接的公式。
我得到的错误是:
[PHPExcel_Calculation_Exception] Price Template Map!B2 -> Invalid cell coordinate A
我的代码是:
try { $inputFileType = \PHPExcel_IOFactory::identify($filePath); $objReader = \PHPExcel_IOFactory::createReader($inputFileType); $objReader->setLoadSheetsOnly(array($this->getListName(), 'Template Info')); $objReader->setIncludeCharts(true); $objPHPExcel = $objReader->load($filePath); } catch (\Exception $e) { throw new \Exception("Invalid file"); } $sheet = $objPHPExcel->getActiveSheet(); $highestRow = $sheet->getHighestRow(); $highestColumn = $sheet->getHighestColumn(); $fieldsNumber = array(); $filterData = array(); $templateIdList = array(); for ($i = 1; $i <= $highestRow; $i++) { $rowData = $sheet->rangeToArray('A' . $i . ':' . $highestColumn . $i, null, true, false); $rowData = $rowData[0]; var_dump($rowData); }
标题的第一行是正确的,但其余的不是。
我的公式是:
=VLOOKUP(A18,'Template Info'!A:C,3,FALSE)"
如果你需要的话,不要犹豫,问我更多的信息!
谢谢大家 :) !
问题是列引用:PHPExcel计算引擎支持范围引用(甚至对其他工作表),但不支持行或列引用
所以
=VLOOKUP(A18,'Template Info'!A1:C100,3,FALSE)
将是有效的,但是
=VLOOKUP(A18,'Template Info'!A:C,3,FALSE)
无法计算
使用getCalculatedValue()
函数。