24

这是我想做的简单演示。我想为一系列单元格设置一个公式(例如 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"

4

5 回答 5

64
Range("C1:C10").Formula = "=A1+B1"

就那么简单。

它使用公式自动填充(FillDown)范围。

于 2015-01-07T17:26:07.310 回答
10

我认为这是最简单的答案:2 行,非常容易理解。它模拟将单元格中写入的公式拖动到一系列单元格中的功能。

Range("C1").Formula = "=A1+B1"
Range("C1:C10").FillDown
于 2014-12-01T18:54:19.210 回答
9

我会更新 C1 中的公式。然后从C1复制公式并将其粘贴到C10 ...

不确定更优雅的解决方案

Range("C1").Formula = "=A1+B1"
Range("C1").Copy
Range("C1:C10").Pastespecial(XlPasteall)
于 2013-03-20T11:44:46.567 回答
9

使用公式 R1C1:

Cells((1,3),(10,3)).FormulaR1C1 = "=RC[-2]+RC[-1]"

与公式不同,FormulaR1C1 具有相对引用。

于 2013-12-08T21:45:23.793 回答
1

用这个

            Sub calc()


            Range("C1:C10").FormulaR1C1 = "=(R10C1+R10C2)"


            End Sub
于 2015-10-25T04:11:47.713 回答