我正在尝试使用PHPExcel获取当前活动单元格的索引。我到目前为止所尝试的是:
// Get worksheet dimensions
$sheet = $objPHPExcel->getSheet(0);
$highestRow = $sheet->getHighestRow();
$highestColumn = $sheet->getHighestColumn();
for ($row = 1; $row <= $highestRow; $row++){
for($col = 1; $col <= $highestColumn; $col++){
$cell = $sheet->getCellByColumnAndRow($col, $row);
$colIndex = PHPExcel_Cell::columnIndexFromString($cell->getColumn());
echo $colIndex;
}
}
它不会在浏览器上显示任何内容。任何人都可以帮我这个吗?
答案 0 :(得分:3)
$highestColumn = $sheet->getHighestColumn();
返回包含最高列地址的字符串(例如“IV”,但您将$col
计为数字,并将其与该字符串进行比较,因此循环并没有做太多的事情。(PHP宽松的比较规则)
使用$ col作为以“A”开头的基于字符的列地址进行迭代
// Get worksheet dimensions
$sheet = $objPHPExcel->getSheet(0);
$highestRow = $sheet->getHighestRow();
$highestColumn = $sheet->getHighestColumn();
$highestColumn++;
for ($row = 1; $row <= $highestRow; $row++){
for($col = 'A'; $col != $highestColumn; $col++){
$cell = $sheet->getCellByColumnAndRow($col, $row);
$colIndex = PHPExcel_Cell::columnIndexFromString($cell->getColumn());
echo $colIndex;
}
}
请注意,您需要增加$highestColumn
,然后使用!=
而不是<=
进行比较