这是我想要做的简单演示。我想将公式设置为一系列单元格(例如C1到C10)。
Range("C1").Formula = "=A1+B1"
但如何使公式使用这样的动态单元格:
Range("C1:C10").Formula = "=Ax+Bx"
所以实际上它就像是,
C1 = A1 + B1
C2 = A2 + B2
C3 = A3 + B3
C4 = A4 + B4
C5 = A5 + B5
...
C10 = A10 + B10
如何更改此公式的RHS以使上述工作:Range("C1:C10").Formula = "=Ax+Bx"
答案 0 :(得分:41)
Range("C1:C10").Formula = "=A1+B1"
这很简单。
使用公式自动填充(FillDown)范围。
答案 1 :(得分:10)
我会在C1中更新公式。然后从C1复制公式并粘贴到C10 ......
不确定更优雅的解决方案
Range("C1").Formula = "=A1+B1"
Range("C1").Copy
Range("C1:C10").Pastespecial(XlPasteall)
答案 2 :(得分:8)
我认为这是最简单的答案:2行并且非常易于理解。它模拟了在一系列单元格中拖动单元格中编写的公式的功能。
Range("C1").Formula = "=A1+B1"
Range("C1:C10").FillDown
答案 3 :(得分:7)
使用FormulaR1C1:
Cells((1,3),(10,3)).FormulaR1C1 = "=RC[-2]+RC[-1]"
与Formula不同,FormulaR1C1具有相对引用。
答案 4 :(得分:1)
使用此
Sub calc()
Range("C1:C10").FormulaR1C1 = "=(R10C1+R10C2)"
End Sub
答案 5 :(得分:0)
如果您要填充列,可以使用单个键盘命令在Excel 2010上执行此操作:
Ctrl-D将填充选定的行,或填充选定的数组或列。应用相对参考。