Чтение значений из книги Excel в каждом листе в определенном столбце - PullRequest
0 голосов
/ 30 сентября 2019

Я хотел бы прочитать значения из столбца B на каждом листе в моей книге.

После большого количества чтения и игры я могу вернуть имена ячеек ячеек, из которых я хочу получить значения, но я не могу понять, как получить значения.

from openpyxl import load_workbook

wb = load_workbook(r"C:/Users/username/Documents/test.xlsx")
for sheet in wb.worksheets:
    for row in range(2,sheet.max_row+1):
        for column in "B":
            cell_name = "{}{}".format(column, row)
            print (cell_name)

Возвращает имена ячеек (т. Е. B2, B3), которые имеют значения в столбце B на каждом листе.

Ответы [ 3 ]

1 голос
/ 30 сентября 2019

Согласно документации https://openpyxl.readthedocs.io/en/stable/usage.html вы можете получить доступ к значениям ячеек как:

sheet['B5'].value

Замените B5 на нужные вам ячейки.

0 голосов
/ 02 октября 2019

просто играть с диапазоном

from openpyxl import load_workbook
wb = load_workbook('')
for sheet in wb:
    for i in range(1,50):
        if sheet['B'+str(i)].value:
            print(sheet['B'+str(i)].value)

Лучше,

from openpyxl import load_workbook
wb = load_workbook('')
for sheet in wb:
    for row in sheet['B']:
        print(row.value)
0 голосов
/ 30 сентября 2019
import xlrd

loc = ("foo.xlsx")  # excel file name
wb = xlrd.open_workbook(loc)
# sheet = wb.sheet_by_index(0)

for sheet in wb.sheets():
    for i in range(sheet.nrows):
        print(sheet.cell_value(i, 1))

Редактировать: я отредактировал свой ответ, чтобы прочитать все листы в файле Excel.

...