如何将变量插入VBA中的公式

如何将变量插入VBA中的公式,vba,excel,formula,Vba,Excel,Formula,谁能解决这个问题 Sub test Dim i as integer For I = 1 to 10 ActiveCell.Offset(0, 2).Formula = "=Sum(E15,&i&)" Next I End Sub 您很接近,正在尝试使用符号(&)连接字符串 ActiveCell.Offset(0, 2).Formula = "=Sum(E15," & i & ")" 在字符串之间使用符号合并它们,而不是在字符串内部。您的实际目标不

谁能解决这个问题

Sub test

Dim i as integer

For I = 1 to 10
   ActiveCell.Offset(0, 2).Formula = "=Sum(E15,&i&)"
Next I

End Sub

您很接近,正在尝试使用符号(
&
)连接字符串

ActiveCell.Offset(0, 2).Formula = "=Sum(E15," & i & ")"

在字符串之间使用符号合并它们,而不是在字符串内部。

您的实际目标不清楚

ActiveCell.Offset(0, 2).Formula = "=Sum(E15," & i & ")"
您可能希望从此代码开始

Sub test()
    Dim i As Integer

    For i = 1 To 10
       cells(i, 4).Formula = "=Sum(E" & i & ":E15)"
    Next
End Sub
并根据您的需要进行调整,知道:

  • 它当前写入单元格“D1:D10”

    由于
    cells(i,4)
    引用第4列(即:列“D”)4和
    i
    行中的一个单元格,因此我们处于一个循环中,
    i
    在1到10之间循环

    因此,如果:

    • 要引用其他列,只需将
      4
      更改为正确的列索引即可

    • 您希望引用不同的行,然后只需将
      i
      更改为正确的行索引(如果需要迭代1到10,则可能是一些
      i+2
      ,但从行
      3开始写入)

  • 在这些单元格中写入的
    公式是:

    =D1中的和(E1:E15)

    =D2中的总和(E2:E15)

    =D10中的总和(E10:E15)

    所以只要根据您的实际需要更改
    “=Sum(E”&i&“:E15)”


您需要从
中取出
i
。但是您试图
求和
,公式
=Sum(E15,1)的目的是什么
?谢谢,如果这是公认的答案,请标记为…@ShaiRado,我同意不清楚OP试图实现什么,但这是他们具体问题的解决方案:)实际上我尝试过这个“=Sum(E”&I&“:E15)”,但我忘了在与和之间留一个空格“这就是我无法让代码正常工作的原因。然后,您可能希望通过单击答案旁边的复选标记将答案标记为已接受,以将其从灰显切换为已填写。非常感谢。