0

我正在尝试获取包含 excel 工作簿中数据的最后一行。我使用了 getHighestDataRow() 函数,就像我从互联网上获得的其他建议一样。但它仅适用于 .xls 文件。当我将文件保存为 .xlsx 格式时,函数返回错误值下面是我的代码:

$inputFileType = PHPExcel_IOFactory::identify($file);
$objReader = PHPExcel_IOFactory::createReader($inputFileType);
$objReader->setReadDataOnly(true);
$objReader->setLoadSheetsOnly(0);
$objPHPExcel = $objReader->load($file);
$sheet = $objPHPExcel->getSheet(0);     

$highestRow = $sheet->getHighestDataRow();
$highestColumn = $sheet->getHighestDataColumn();
$highestColumnIndex = PHPExcel_Cell::columnIndexFromString($highestColumn);     

我一直在寻找这个问题几个小时,但仍然找不到答案。

4

1 回答 1

0

getHighestDataRow()方法不关心 PHPExcel 对象及其工作表是从文件中加载的,还是使用new.... 创建的。如果从文件中加载,它不知道是使用 xls 文件还是 xlsx 文件来创建PHPExcel 对象......所以你错了。该调用适用于单元格集合,而不是以任何方式适用于文件或文件类型。

您使用$sheet->getHighestDataRow()它发布的代码也没有使用$sheet->getHighestRow()

于 2015-06-05T10:35:40.987 回答