You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用openpyxl读取Excel多个工作表的值?现有代码仅返回单个值

解决Excel多工作表指定单元格值读取问题

原代码的问题在于循环中每次将单元格值赋值给同一个变量cell_obj,循环结束后该变量仅保留最后一次循环的结果,因此只能输出最后一个工作表的值。以下是两种可行的修改方案:

方案1:循环内直接打印每个工作表的值

在遍历每个工作表时,实时打印对应单元格的值,避免值被覆盖:

import openpyxl

path = "./docs/hoi.xlsx"

wb_obj = openpyxl.load_workbook(path, data_only=True)

sheet_names = [' Overzicht Noord ', 'Overzicht Midden']

for sheet_name in sheet_names:     
    sheet_obj = wb_obj[sheet_name]
    cell_value = sheet_obj.cell(row=6, column=8).value
    # 用strip()去除工作表名前后空格,输出更整洁
    print(f"工作表「{sheet_name.strip()}」的指定单元格值:{cell_value}")

方案2:将结果存储到字典中(方便后续处理)

如果需要对读取到的值进行后续操作,可以把工作表名和对应值存储到字典中,最后统一输出或使用:

import openpyxl

path = "./docs/hoi.xlsx"

wb_obj = openpyxl.load_workbook(path, data_only=True)

sheet_names = [' Overzicht Noord ', 'Overzicht Midden']
cell_values = {}  # 存储工作表名与对应值的映射

for sheet_name in sheet_names:     
    sheet_obj = wb_obj[sheet_name]
    cell_values[sheet_name.strip()] = sheet_obj.cell(row=6, column=8).value

# 遍历字典打印所有结果
for sheet, value in cell_values.items():
    print(f"工作表「{sheet}」的指定单元格值:{value}")

# 也可直接打印整个字典查看完整结果
# print(cell_values)

内容的提问来源于stack exchange,提问作者mightycode Newton

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.20 11:45:35