Получить ячейку идентификатором ссылочной буквы ячейки с помощью Apache POI
Я пытаюсь получить Cell из строки по ссылке Cell, и у меня есть проблема. Например, у меня есть:
row.getCell(CellReference.convertColStringToIndex("B"));
Это отлично работает, если индекс столбца равен 1
, но если столбец был удален, а индекс столбца B
стал 2
а метод: CellReference.convertColStringToIndex("B")
все еще преобразует его в 1
в этом случае я не могу получить свой столбец, Я получаю null
.
Итак, вопрос в том, как я могу получить столбец из строки в зависимости от идентификатора ячейки, который является буквой?
Ответы
Ответ 1
Взгляните на мой ответ на предыдущий вопрос:
Вероятно, вы захотите использовать класс утилиты CellReference, чтобы помочь вам. Он предлагает преобразование между буквами букв + цифр в стиле Excel и строками + столбцами типа POI. При его использовании вы можете сделать что-то вроде:
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 (если она определена, else null)