PHPExcel:如何读取内容来自其他工作表中单元格的单元格中的值

时间:2016-04-22 20:17:59

标签: php excel laravel phpexcel

我花了最后几天试图解决这个问题。我有一个带有几个标签(表格)的电子表格。最后一个选项卡在所有其他选项卡中输入值。使用以下公式自动填充这些值:

=$'otherSheetName'.A1

如果我离开calculateFormulas = true,那么这些值将被读为空。 如果我设置calculateFormulas = false,则将值读作文字公式。

我是第一次使用LaravelExcel但是我放弃了为此寻找解决方案,所以我转移到了PHPExcel。 Laravel Excel的解决方案也将受到赞赏。

由于

更新: 我如何在PHPExcel中读取值:

$inputFileType = PHPExcel_IOFactory::identify($file->getRealPath());
$objReader = PHPExcel_IOFactory::createReader($inputFileType);
$objReader->setLoadSheetsOnly("MySheet");
$objPHPExcel = $objReader->load($file->getRealPath()); 
$rows = $objPHPExcel->getActiveSheet()->toArray(null,true,true,true);

然后,我遍历数组$ rows并提取我想要的值。

1 个答案:

答案 0 :(得分:1)

您需要加载这些公式中使用的所有依赖关系表,尽管您不一定需要加载每个工作表,但可以传递工作表名称列表以作为数组加载

$objReader->setLoadSheetsOnly(["MySheet", "OtherSheet1", "OtherSheet2"]);

您不需要迭代任何其他工作表,但可以将活动工作表设置为您想要的任何工作表

$objReader->setActiveSheetIndexByName("MySheet");

然后调用活动工作表($objPHPExcel->getActiveSheet()->...)来访问单元格将是对该工作表的引用。