2

次のコードがあります

$objPHPExcel = PHPExcel_IOFactory::load("untitled.xls");
foreach ($objPHPExcel->getWorksheetIterator() as $worksheet) //loop through the 3 worksheets of KindleEditionEISBN
{
$sheet_name = $worksheet->getTitle();  

if ($worksheet->getTitle = 'Records')
{
$highestColumm = $objPHPExcel->setActiveSheetIndex(0)->getHighestColumn();
$highestRow = $objPHPExcel->setActiveSheetIndex(0)->getHighestRow();

そして、私のuntitled.xlsファイルは次のようになります(列をスキップし、すべての偶数列の値)

          Column    A       B       C     D      E     F     G    H   I .... V
1st row        
2nd Row                   (value)      (value)      (value)     (value)

私がやりたいのは、各ランタイムの次の空白行に変数を書き込むことです。これにより、データは次のようにフォーマットされます

          Column    A       B       C     D      E     F     G    H   I .... V
1st row        
2nd Row                   (value)      (value)      (value)     (value)
3rd Row                   (new value)  (new value) ....

PHPExcel Column Loopを調査したことから、関数 getHighestColumn(); まで & getHighestRow(); 埋められた最後の行/列を返しますか? これを関数setCellValueByColumnAndRowで使用できますか、それとも何か不足していますか

4

1 に答える 1

2

getHighestRow()を含む最大の行番号を返しますがsomething、そのsomethingマットはデータ値ではありません。その行のセルにスタイル情報が含まれているか、名前付き範囲や印刷領域などで参照されている可能性があります。

スプレッドシートが読み込まれるときに決定されますが、ワークシートにデータを追加しても更新されないため、迅速かつ効率的です。

getHighestDataRow()実際の cell を含む最大の行番号を返しますdata

実際のセルをチェックして呼び出されるたびに計算されるため、これはあまり効率的ではありません。しかし、それは常に正しいことを意味します。

于 2013-05-09T06:25:25.430 に答える