Python Openpyxl sheet.dimensions - PullRequest
       19

Python Openpyxl sheet.dimensions

0 голосов
/ 29 августа 2018

У меня есть электронная таблица с данными, и я хочу знать первую и последнюю ячейку диапазона, содержащего данные. Я использую Python с Openpyxl. Свойство sheet.dimensions возвращает верхнюю левую и нижнюю правую ячейки области непустых ячеек. Как я могу положить результат листа.размерности в 2 переменных. Пример: результат листа.размерности - А2: С20. Мне нужна одна переменная, содержащая первую ячейку диапазона (в данном случае A2), а другая переменная, содержащая последнюю ячейку диапазона (в данном случае C20). Я ожидал что-то вроде sheet.dimensions.first и .last, но пока не могу найти ответ.

таблица

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

импорт openpyxl

book = openpyxl.load_workbook ('test 1.xlsx', data_only = True)

лист = book.active

печать (лист.размеры)

book.save («результат теста 1.xlsx»)

При запуске программы выдается результат A2: C20.

1 Ответ

0 голосов
/ 06 сентября 2018

Я обнаружил, что openpyxl имеет следующие атрибуты:

  • sheet.min_row
  • sheet.max_row
  • sheet.min_column
  • sheet.max_column

Это именно те числа, которые мне нужны, и по ним я знаю, сколько итераций необходимо для обработки всей таблицы. Пример:

import openpyxl

book = openpyxl.load_workbook ('test 1.xlsx', data_only = True)

лист = book.active

mi_row = sheet.min_row

ma_row = sheet.max_row

mi_col = sheet.min_column

ma_col = sheet.max_column

печать (mi_row, mi_col, ma_row, ma_col)

для строки в sheet.iter_rows (min_row = mi_row, min_col = mi_col, max_row = ma_row, max_col = ma_col):

for cell in row:

    pop = (cell.value)

    print(pop)
...