我在单元格 A1 中有一个公式,它是 "=C1+$D$1"。我想使用 xlwings 将此公式复制粘贴到 A3 中(保留相对单元格引用)。我希望单元格 A3 中粘贴的公式是 "=C3+$D$1" 而不是 "=C1+$D$1"。
是否有标志或函数可以根据我们要粘贴的范围调整公式?如果没有,我想最好的解决方案是在粘贴之前处理公式本身?
rng_to_paste = ws.range('A1').options(ndim=1).formula
ws.range('A3').options(ndim=1).formula = rng_to_paste
请您参考如下方法:
基于 KrisG 的回答,这对我有用:
formula = xw.sheets[0].range("A1").formula
xw.sheets[0].range("A1,A3").formula = formula
结果:
A
1 =C1+$D$1
2
3 =C3+$D$1
基本上,它是用相同的公式覆盖 A1,但这给了它一个引用点,因此它知道如何修改 A3 的公式。
