Excel 2007 VBA中Application.sum和Application.Sum之间的区别

我在VBA中编写macros以获取Excel 2007中范围的值的总和。但是,每当我尝试键入下面的代码:

sum = Application.Sum(Range("C2:C19") 

编辑把它变成:

 sum = Application.sum(Range("C2:C19") 

由于我不确定它们之间的区别,我用Print语句在Immediate窗格中试了一下。 与Application.sum的一个给我错误的总和,而与Application.Sum给我正确的总和。 但是由于编辑器自动将总和改为总和,我无法进一步处理。 任何人都可以告诉我这是怎么回事?

VBIDE为什么将“Sum”改为“sum”的根本问题与编辑器的自动大写function有关。 您将variables声明为“sum”,在大写时优先于内置函数。 如果你将variables声明为“总和”,那么你就不会看到变化。 实际上,Application.Sum和Application.sum是相同的。

您遇到的问题是您正在使用现有的函数作为variables名称。 这就是为什么它不工作。