Python 从Excel工作簿中读取特定列中每个工作表的值

Python 从Excel工作簿中读取特定列中每个工作表的值,python,excel,openpyxl,Python,Excel,Openpyxl,我想在工作簿中的每个工作表中读取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列中的值

经过大量的阅读和游戏后,我可以返回我想要的值的单元格名称,但我不知道如何获取值

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列中都有值

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文件中的所有表格。

根据文档,您可以通过以下方式访问单元格值:

sheet['B5'].value

用您需要的电池替换B5。

只需使用范围即可

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)

如果你再多尝试一点,你就会明白。我已经尝试了很多,这就是为什么我有一个问题,我是一个初学者,因为一个未知的原因被删除。我已将打印更改为:print sheet['cell_name']。值,但它不是B中列的有效坐标:仅迭代一个值B,您可以删除仅返回一个表值的内部循环,它需要是每个表,而表['B']提供整个列。