繁体   English   中英

如何使用 python 向下多行迭代 excel 公式

[英]how do I iterate an excel formula down multiple rows using python

我是 Python 的新手,没有真正的编码知识并且被卡住了。 我有一个 excel 电子表格。 第一列标题是土地数据。 土地数据下方列出了分配或农场。 我有第二列,标题为结果,公式 =IF(A2="Farm","Yes","No")。

我下面的代码只是对第一行进行计算。 如何使用 Python 将这个公式向下迭代到 Outcome 列的多行。

import openpyxl
wb = openpyxl.load_workbook('test.xlsx')
ws1=wb.active
ws1["C2"]= '=IF(A2="farm","Yes","No")'
wb.save('test.xlsx')

如果您知道要更改的行数,则可以执行以下操作:

import openpyxl
wb = openpyxl.load_workbook('test.xlsx')
ws1 = wb.active

last_row = 10  # For example

for i in range(2, last_row):
    cell = "C" + str(i)
    a_cell = "A" + str(i)
    ws1[cell] = '=IF(' + a_cell + '="farm","Yes","No")'
wb.save('test.xlsx')

您基本上遍历每一行并为每一行创建公式。

此外,如果您能以某种方式获取工作表的行数,并将其分配给last_row变量,您可以改进/自动化,而不是像我在示例中那样对其进行硬编码。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM