16

我正在尝试通过单元格引用从行中获取单元格,但我遇到了问题。例如我有:

row.getCell(CellReference.convertColStringToIndex("B"));

如果 Column 索引是 ,那工作得很好1,但是如果 Column 被删除所以BColumn 索引变成2了并且 method:CellReference.convertColStringToIndex("B")仍然将它转换为1在这种情况下我无法得到我的 Column,我得到null.

所以问题是如何根据单元格标识符(一个字母)从行中获取列?

4

1 回答 1

31

看看我对上一个问题的回答

您可能希望使用CellReference实用程序类来帮助您。它提供 Excel 样式字母+数字引用和 POI 样式基于 0 的行+列之间的转换。使用它时,您可以执行以下操作:

 Sheet sheet = workbook.getSheet("MyInterestingSheet");

 CellReference ref = new CellReference("B12");
 Row r = sheet.getRow(ref.getRow());
 if (r != null) {
    Cell c = r.getCell(ref.getCol());
 }

这将让您在给定的 Excel 样式引用中找到单元格(如果已定义,则为 null)

于 2013-01-04T10:50:41.743 回答