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

如何用Python+openpyxl实现Excel公式自动向下批量填充

openpyxl 实现公式批量下拉填充(新手友好版)

你只要修改原有代码中给C2单元格赋值的部分,新增几行循环代码即可实现和Excel手动下拉一样的公式填充效果,完整修改后的代码如下:

from openpyxl import Workbook, load_workbook

wb = load_workbook('TestExcel.xlsx')
ws = wb.active

ws.delete_cols(1,3)
ws.delete_cols(3,8)
ws.delete_cols(4,3)

ws.insert_cols(3,1)

ws['A1'].value = "Full Name"
ws['C1'].value = "Email Address"

# 以下是新增的公式批量填充代码
# 先获取当前工作表有数据的最后一行行号
max_row = ws.max_row
# 从第2行开始遍历到最后一行,逐行写入公式
for row in range(2, max_row + 1):
    # 公式里的行号会随当前遍历的行数自动变化,和手动下拉效果完全一致
    ws[f'C{row}'].value = f'=B{row}&"@testdomain.com"'

wb.save('TestExcelUpdated.xlsx')

代码说明

  • 不需要额外安装其他依赖,全部用openpyxl自带的属性和语法就能实现
  • ws.max_row是openpyxl内置的工作表属性,会自动识别当前表里有数据的最后一行的行号,不需要手动统计行数
  • range(2, max_row + 1)是因为Python的range区间是左闭右开,所以要+1才能把最后一行包含进去
  • 公式里用了f-string语法自动替换行号,生成的每一行公式都会自动引用对应行的B列单元格,和Excel手动下拉公式的效果完全相同

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.02 03:15:03