2016-05-30 7 views
0

使用された行と列の数はそれぞれgetLastRowNum()とgetPhysicalNumberOfCells()を使用しますが、行の正しいインデックスは与えません。特定の列で使用される行数を取得する方法

int lastRowNum = sheetAt.getLastRowNum(); 
int lastColNum = sheetAt.getRow(0).getPhysicalNumberOfCells(); 

他のオプションは同じですか?

+0

は、あなたが(sheetAt.getPhysicalNumberOfRowsを試してみました取得)?Excelのインデックスが原因でその0から始まり、あなたはsheetAt.getLastRowNumから期待される結果を取得されていません() –

+0

また、索引は連続である必要はないことに注意してください。つまり、行番号0,5および8を作成できますが、依然として3つの物理行しか持たないことに注意してください。セルと同じです。 – centic

+0

行は連続しています。さらに、塗りつぶされた行の数は76ですが、出力として112を得ています。 – user387600

答えて

1

行とセルが欠落している可能性があり、列に使用されているセルの数を返す組み込み関数がありません。だから、自分で関数を書く必要があります。

int count = 0; 
for (Row row : sheet) { 
    if (row.getCell(5) != null) { 
     count += 1; 
    } 
} 

これは、列において使用される細胞の数F.

+0

うまく動作します。ありがとうございました。ちょうどそれに加えて少し。セルが空白か否かを確認する必要があります。この空白のセルを使って、正しく動作していることを確認します。 – user387600

関連する問題