Как перебирать столбцы, чтобы получить данные с метками строк в Excel?

Я пишу программу на Java, в которой хочу получить данные с заголовками строк. Мой лист Excel выглядит следующим образом:

Я написал следующий простой код Java для получения значений последовательно на основе заголовков строк:

  .... try {fileSystem = new POIFSFileSystem (inpStrm);  HSSFWorkbook workBook = новая HSSFWorkbook (файловая система);  Лист HSSFSheet = workBook.getSheetAt (0);  int столбец = 1;  для (int я = 0; я  

И после запуска кода мой вывод выглядит следующим образом:

  P1 M C1 Хайдарабад P2 M C2 Пуна  P3 F C3 Pune P4 M C4 Хайдарабад  

Есть ли какой-нибудь простой и осуществимый способ сделать то же самое для больших листов Excel (50 заголовков строк)?

Если я использую класс POGO, имеющий более четырех свойств, как я могу получить список объектов со значениями из Excel?


Теперь есть какой-нибудь простой и осуществимый способ сделать то же самое для больших листов Excel (50 заголовков строк)?

Вы можете использовать метод sheet.getLastRowNum () как условие в вашем цикле for для перебора всех строк и метод row.getLastCellNum () во втором цикле для перебора всех ячеек в определенной строке.

  for (int rowNumber = 0; rowNumber  

Важно! Приведенный выше код сначала проходит через каждый столбец и затем по каждой строке.


0

Попробуйте следовать

  for (Cell cell: sheet.getRow (i)) {//ваша логика}  

Улучшить этот ответ
отредактировал 23 ноября ’18 в 06:42
Санкумарсингх
9, 01088 золотых знаков4646 серебряных знаков7171 бронзовых знаков
ответ дан 23 ноя ’18 в 05:49
добавить комментарий |

Попробуйте выполнить

  для (Cell cell: sheet. getRow (i)) {//ваша логика}  


Использование For Each в диапазоне Excel

В этой статье обсуждаются несколько способов циклического перебора диапазонов:

  • Для каждого ячейка в диапазоне
  • Цикл по ячейкам в строке
  • Цикл по ячейкам в столбце
  • Цикл по столбцам в диапазон
  • Цикл по строкам в диапазоне
  • Цикл по областям в диапазоне

Для каждой ячейки в диапазоне

Одна из наиболее распространенных вещей, которые вы будете делать при программировании VBA в Excel, — цикл через набор ячеек в указанном диапазоне, как в приведенном ниже примере, который выводит адрес и значение 4 ячеек на листе данных в непосредственное окно: $ B $ 2: a, $ C $ 2 : b, $ B $ 3: 1, $ C $ 3: 2 .

  Dim rng As Range: Установить rng = Application.Range ("Data! B2: C3") Dim cel as RangeFor каждой cel In rng.Cells с cel Debug.Print.  Address & ":" & .Value End WithNext cel  

Перебирать ячейки в строке

В приведенном ниже коде показано, как перебирать ячейки в строке с помощью RowIndex: = 2 . Применительно к данным на листе справа это вернет 1, 2 . Отсюда мы видим, что строки отсчитываются от начальной точки rng, поэтому на листе 3 строки, 2 внутри rng. Кроме того, берутся только ячейки внутри установленного диапазона rng.

  Dim rng As Range: Set rng = Application.Range ("Data! B2: C3")   

Оцените статью
logicle.ru
Добавить комментарий