python - Python 和 Excel 公式
问题描述
在这里完全是初学者,但特别需要尝试通过自动化 Excel 让我的生活更轻松。我有一份每周报告,其中包含很多无用的列,使用 Python 我可以删除这些列并重命名它们,代码如下。
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"
ws['C2'].value = '=B2&"@testdomain.com"'
wb.save('TestExcelUpdated.xlsx')
这可以完成工作,但我希望公式从 B2 向下继续(因为顶行是标题)。
ws['C2'].value = '=B2&"@testdomain.com"'
显然,在 Excel 中,这只是将公式拖到列末尾的情况,但我无法在 Python 中使用它。我见过类似的问题,但答案在我头上。真的很感谢一个傻瓜指南。 Python代码后的Excel报告示例
解决方案
一种方法是遍历工作表中的行。
for row in ws.iter_rows(min_row=2): #min_row ensures you skip your header row
row[2].value = '=B' + str(row[0].row) + '&"@testdomain.com"'
row[2].value
由于基于零的索引选择第三列。row[0].row
获取当前行对应的数字
推荐阅读
- ruby-on-rails - 无法在 Ruby on Rails 5 中显示数据库中的数据
- android - ExifInterface 返回错误的方向(因为它存储了多个冲突的属性)
- python-3.6 - 尽管文件存在,但在 Python 项目中获取 FileNotFoundError
- maven - web-inf 中的查看文件夹不包含在输出中
- apache-storm - Storm UI 因“正在加载拓扑摘要”而挂起
- angular - 如何在ionic3中调用函数内部的函数?
- jersey-2.0 - 授权在招摇球衣中不起作用?
- android - 由于线程“main” java.util.zip.ZipException 中的异常,无法运行 react-native 应用程序:打开 zip 文件时出错
- mongodb - expressjs 不允许变量保留范围,即使它们不是本地的
- hibernate - JPA/Hibernate:在不存在的序列/关系上选择 currval