通过列循环插入SUM公式

我有一个程序,我需要find列7到30(G到AD)的总和。 我想要做的是循环并插入公式(= SUM(Columns(i)2:Columns(i)1000))但显然Columns(i)不是字母,而是数字。 这不符合SUM所要求的格式,所以我想知道我能做些什么。

我有一个程序,旧的工作表将被删除,新的工具添加了一个产品的configuration数据。 这意味着公式不能在表格本身或任何其他表单引用。 价格将保存在G到P和U到AD列,我需要find总数,并将其放在第一行上方的相应数据。 当我尝试:

For i = 7 To 30 wsNewSheet.Cells(1, i).Value = "=SUM(" & Columns(i).Select & "2:" & Columns(i).Select & "1000)" Next i 

列(i)由于某种原因返回为“真”。 我也试图将总数放在不同的工作表中,因为新工作表(wsNewSheet)正在创build。

  For i = 2 To 30 For f = 7 To 30 wsTotals.Cells(1, i).Value = "=SUM(" & wsNewSheet & "!" & Columns(f).Select & "2:" & Columns(f).Select & "1000)" Next f Next i 

然而,这也没有工作。 此声明返回“运行时错误”438。 对象不支持这个属性或方法。“ 我试图做这个错误的研究,但不能解决我的情况。 谢谢你的帮助。

这里不需要循环,而是使用单行:

 Range("G1:AD1").Formula = "=SUM(G2:G1000)" 

Excel自动调整公式:

  • G1你有=SUM(G2:G1000)
  • H1你会有=SUM(H2:H1000)
  • ….
  • AD1你会有=SUM(AD2:AD1000)