【问题标题】:Filling a column with formula using xlwings使用 xlwings 用公式填充列
【发布时间】:2023-01-13 06:00:02
【问题描述】:

我正在尝试编写代码,使用带有 xlwings 的 excel 公式将值从一列复制到另一列

Sample code

如果我使用上面的代码,它会将 V3 的单元格值复制到 B3。

expected code or result

但我想将 V 的每个单元格的值复制到 B 使 iterrows 如下所示

但它不起作用。

谁能帮我这个?

【问题讨论】:

标签: python-3.x xlwings


【解决方案1】:

问题是您需要使用 f-string 来格式化文本:

for i in range(1, n+1):
    xw.Range(f"B{i}").formula = f"=V{i}"

执行上述操作的一种更有效的方法是将一系列单元格设置为第一个单元格的公式,因为其余单元格将是相对的而不是绝对引用:

n = 10
sheet.range("B1:B"+str(n)).formula = "=V1"

因此,通过使用上述内容,单元格 B1:B10 将具有单元格 V1:V10 的值。

我还建议使用 sheet.range() 而不是 xw.Range(),因为这将确保编辑正确的工作表。

【讨论】:

    猜你喜欢
    • 2023-04-08
    • 2022-11-03
    • 1970-01-01
    • 2022-09-23
    • 1970-01-01
    • 1970-01-01
    • 2018-01-26
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多