将excel公式复制到一个新的范围



我有一个excel工作表,其中包含以下数据:
A1:1
B1:= A1 + 2
A5:2

我试图创建一个宏来将公式从B1复制到B5

Sub test()
MsgBox Cells(1, 1)
Cells(5, 2) = Cells(1, 2).Formula
End Sub

但此宏不会更改公式单元格的值。也就是说,宏复制了公式= A1 + 2,但我希望它是= A5 + 2。有简单的方法吗?

您希望.Formula2R1C1属性如下:

Sub copy_formula()
Range("b5").Formula2R1C1 = Range("b1").Formula2R1C1
End Sub

Sub copy_formula()
Cells(5, 2).Formula2R1C1 = Cells(1, 2).Formula2R1C1
End Sub

最新更新