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

如何在Python(Jupyter Notebook)中批量读取Excel指定单元格值并新增列

批量处理Excel文件:动态读取单元格值 + 新增固定列

依赖库安装

先确保安装所需工具库:

pip install pandas openpyxl

批量处理函数实现

以下函数可批量处理指定目录下的所有Excel文件,支持传入单元格地址读取对应值(无需硬编码),同时为每个文件新增固定值的三列:

import pandas as pd
from openpyxl import load_workbook
import os

def batch_process_excel_files(folder_path, cell_address, exam_id="EXAM-001", subject="Maths", date="30-07-2022"):
    # 获取目录下所有xlsx格式文件
    excel_files = [f for f in os.listdir(folder_path) if f.endswith(".xlsx")]
    
    for file_name in excel_files:
        file_path = os.path.join(folder_path, file_name)
        try:
            # 用openpyxl读取指定单元格的值
            wb = load_workbook(file_path, read_only=True)
            ws = wb.active
            cell_value = ws[cell_address].value
            wb.close()
            
            # 用pandas读取完整Excel数据
            df = pd.read_excel(file_path)
            
            # 新增三列并填入固定值
            df["exam ID"] = exam_id
            df["Subject"] = subject
            df["Date"] = date
            
            # 保存处理后的文件(添加_processed后缀避免覆盖原文件)
            processed_file_name = f"{os.path.splitext(file_name)[0]}_processed.xlsx"
            processed_file_path = os.path.join(folder_path, processed_file_name)
            df.to_excel(processed_file_path, index=False)
            
            print(f"处理完成:{file_name} | 单元格{cell_address}值:{cell_value}")
        except Exception as e:
            print(f"处理失败:{file_name} | 错误:{str(e)}")

函数调用示例

在Jupyter Notebook中直接调用,替换为你的实际路径和目标单元格:

# 替换为你的Excel文件所在目录
target_folder = "./your_excel_folder"
# 替换为需要读取的单元格地址(如"B3"、"D1")
target_cell = "A1"

batch_process_excel_files(target_folder, target_cell)

关键说明

  • 动态读取单元格:通过cell_address参数传入目标单元格地址,无需在代码中硬编码固定位置
  • 批量自动化:自动遍历目录下所有.xlsx文件,无需逐个手动处理
  • 原文件保护:处理后的文件添加_processed后缀,完全保留原文件内容
  • 错误容错:捕获处理过程中的异常,打印错误信息但不中断整个批量任务

内容的提问来源于stack exchange,提问作者Syed Arsh

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.25 02:24:10