PHPExcel ライブラリを使用して、多くのワークシートを含む Excel ファイルを読み取り、処理を実行しています。これで、各ワークシートをループしても問題ありません。ただし、各ワークシートのインデックスを抽出して印刷したいのですが、これを行う方法がわかりません。確かに、私は自分のカウンターを作ることができます。しかし、getWorksheetIterator() メソッドを備えた組み込みメソッドが必要ですよね?
つまり、現在のワークシート イテレータを抽出するにはどうすればよいでしょうか。
助けてくれてありがとう。
これは、ドキュメントのループの例です。参照用に、worksheetiterator メソッドを含めることでわずかに変更されています。
<?php
$objReader = PHPExcel_IOFactory::createReader('Excel2007');
$objReader->setReadDataOnly(true);
$objPHPExcel = $objReader->load("test.xlsx");
$objWorksheet = $objPHPExcel->getActiveSheet();
$CurrentWorkSheetIndex = 0;
foreach ($objPHPExcel->getWorksheetIterator() as $worksheet) {
echo 'WorkSheet' . $CurrentWorkSheetIndex++ . "\n";
echo '<table>' . "\n";
foreach ($objWorksheet->getRowIterator() as $row) {
echo '<tr>' . "\n";
$cellIterator = $row->getCellIterator();
$cellIterator->setIterateOnlyExistingCells(false); // This loops all cells,
// even if it is not set.
// By default, only cells
// that are set will be
// iterated.
foreach ($cellIterator as $cell) {
echo '<td>' . $cell->getValue() . '</td>' . "\n";
}
echo '</tr>' . "\n";
}
echo '</table>' . "\n";
}
?>