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

如何使用openpyxl修改Excel单元格并按指定格式读写Excel数据

openpyxl Excel操作实现代码

1. 修改Excel所有单元格的方法

首先安装依赖:
pip install openpyxl

实现代码示例:

from openpyxl import load_workbook

# 加载本地Excel文件
wb = load_workbook("你的源文件路径.xlsx")

# 遍历文件内所有工作表
for ws in wb.worksheets:
    # 遍历当前工作表所有包含数据的单元格
    for row in ws.iter_rows():
        for cell in row:
            # 此处可自定义修改逻辑,示例为给所有非空单元格值加统一前缀
            if cell.value is not None:
                cell.value = f"自定义前缀_{cell.value}"

# 保存修改后的文件
wb.save("修改后文件.xlsx")

可根据实际需求调整修改逻辑,比如替换特定内容、调整数值格式、修改单元格样式等。

2. 输入表转指定格式输出表的实现

表结构说明

  • 输入表:行式存储的原始数据表,每条数据占单独一行,包含多列业务字段
  • 输出表:拆分排版格式,单条原始数据拆分为多行展示,不同数据间预留空行分隔
    输入参考截图
    输出格式参考截图

实现代码示例

from openpyxl import load_workbook, Workbook

# 读取输入文件
input_wb = load_workbook("输入文件路径.xlsx")
input_ws = input_wb.active # 可根据实际替换为指定工作表名,如input_wb['工作表名']

# 新建输出文件
output_wb = Workbook()
output_ws = output_wb.active

# 定义输出表的起始写入行号
current_row = 1

# 遍历输入表数据,若需跳过表头可修改为input_ws.iter_rows(min_row=2, values_only=True)
for row in input_ws.iter_rows(values_only=True):
    # 以下写入规则可根据截图实际格式调整,示例为每个字段单独占一行
    output_ws.cell(row=current_row, column=1, value="字段1名称")
    output_ws.cell(row=current_row, column=2, value=row[0])
    current_row += 1
    
    output_ws.cell(row=current_row, column=1, value="字段2名称")
    output_ws.cell(row=current_row, column=2, value=row[1])
    current_row += 1
    
    output_ws.cell(row=current_row, column=1, value="字段3名称")
    output_ws.cell(row=current_row, column=2, value=row[2])
    current_row += 1
    
    # 单条数据写完后空一行,再写下一条数据
    current_row += 1

# 保存输出文件
output_wb.save("输出文件.xlsx")

可根据截图实际要求调整字段对应关系、列宽、字体样式等参数,匹配最终输出效果。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.07 09:06:03