在vba中使用sum函数时出错

我有一个单元格范围(只是一个简单的列),这个编号喜欢使用vba中的sum函数。 单元格在我创buildmacros时最初使用的单独的工作表上。 它返回一个运行时错误1004. Im新的VBA所以即时通讯可能格式化错误。 任何帮助,将不胜感激!

Worksheets("Sheet2").Cells(16, 3) = WorksheetFunction.Sum(Worksheets("Sheet2").Range(Cells(4, 3), Cells(12, 3))) 

始终确保使用工作表限定Range() Cells()

 Worksheets("Sheet2").Cells(16, 3) = WorksheetFunction.Sum(Worksheets("Sheet2").Range(Worksheets("Sheet2").Cells(4, 3), Worksheets("Sheet2").Cells(12, 3))) 

或者,也许更容易阅读:

 With Worksheets("Sheet2") .Cells(16, 3) = WorksheetFunction.Sum(.Range(.Cells(4, 3), .Cells(12, 3))) End With 

使用时请注意, . 是至关重要的 如果没有这个,它只会引用ActiveSheetRange()或者Cells() ,可能会导致错误。