Sum函数引用列号VBA

时间:2014-08-03 08:45:43

标签: excel vba excel-vba syntax syntax-error

我需要在Sum函数中按数字引用列(即B列= 2,C = 3,E = 5等)

我尝试了这段代码,但它没有用(ColN是从列表框索引中读取的列号)

Range("M5") = WorksheetFunction.Sum(Range(ColN& "2" : ColN&"5"))) '(F2:F5) for example  

我更喜欢使用formulaR1C1 cos这个函数需要应用于其余的行(即下一个单元格将是F3的总和:F6等等)

所有帮助解决问题的人都将不胜感激。

1 个答案:

答案 0 :(得分:1)

你可以这样做:

Range("M5") = WorksheetFunction.Sum(Range(Cells(2, 6), Cells(5, 6)))

Cells函数接受行和列参数,类似于R1C1表示法所需的参数。在这种情况下,6表示第6列,即列F。在您的情况下,您有colN作为列号,因此您可以这样做:

'Dim colN As Long
'colN = 6 ' read from a listbox index in your case, for example
Range("M5") = WorksheetFunction.Sum(Range(Cells(2, colN), Cells(5, colN)))