Application.Run("SUM", "10", "20") 调用sum函数报错
时间: 2023-07-06 20:43:34 浏览: 35
`Application.Run`函数调用Excel系统函数时,需要传递正确的参数类型和格式。在你的示例中,第二个参数和第三个参数是字符串类型,而SUM函数需要传递一个范围作为参数,因此会导致函数调用失败。
如果你想计算两个数的和,可以使用以下代码:
```
Dim result As Double
result = Application.WorksheetFunction.Sum(10, 20)
MsgBox result
```
在这个示例中,使用`Application.WorksheetFunction.Sum`函数计算10和20的和,并将结果存储在`result`变量中。然后使用`MsgBox`函数显示计算结果。需要注意的是,`Application.WorksheetFunction.Sum`函数需要传递数字作为参数,而不是字符串。
如果你想计算一个范围内的数字的和,可以使用以下代码:
```
Dim result As Double
result = Application.WorksheetFunction.Sum(Range("A1:A5"))
MsgBox result
```
在这个示例中,使用`Application.WorksheetFunction.Sum`函数计算A1到A5单元格范围内的数字的和,并将结果存储在`result`变量中。然后使用`MsgBox`函数显示计算结果。需要注意的是,`Application.WorksheetFunction.Sum`函数需要传递一个范围作为参数。
相关问题
Application.Run 与Application.WorksheetFunction调用函数的区别
`Application.Run`和`Application.WorksheetFunction`都可以用来调用Excel的内置函数,但它们有一些区别。
`Application.Run`是一个通用的函数调用方法,可以用来调用任何公开的VBA函数,包括Excel内置函数。使用`Application.Run`函数调用Excel内置函数时,需要传递函数名称和参数。例如,`Application.Run("SUM", Range("A1:A10"))`就是调用SUM函数计算A1到A10单元格范围内的数字的总和。
`Application.WorksheetFunction`是一个特定的类,它包含了Excel内置函数的方法。使用`Application.WorksheetFunction`调用Excel内置函数时,需要在函数名前加上`WorksheetFunction`前缀。例如,`WorksheetFunction.Sum(Range("A1:A10"))`就是调用SUM函数计算A1到A10单元格范围内的数字的总和。
这两种方法的区别在于错误处理机制。使用`Application.Run`调用Excel内置函数时,如果函数调用失败,VBA代码将会停止执行并抛出一个错误。如果希望在函数调用失败时继续执行代码,需要在调用函数之前添加错误处理代码。使用`Application.WorksheetFunction`调用Excel内置函数时,如果函数调用失败,VBA代码将会自动抛出一个错误,可以通过错误处理机制来处理这个错误。
需要注意的是,`Application.WorksheetFunction`只能用于调用Excel内置函数,如果需要调用其他公开的VBA函数,需要使用`Application.Run`。另外,`Application.WorksheetFunction`调用Excel内置函数时,参数的类型和格式必须符合Excel函数的要求,否则也会导致错误。
application.Run excel的系统函数报错
如果你使用`Application.Run`函数调用Excel的系统函数时出现错误,可能是以下原因之一:
1. 函数名称拼写错误:请确认你输入的函数名称是否正确,比如SUM函数的拼写是否为"S-U-M",而不是"S-U-M-M"等。
2. 函数参数错误:请确认你传递给Excel系统函数的参数是否正确。Excel系统函数可能需要特定的参数类型或参数格式,如果传递的参数不符合要求,会导致函数调用失败。
3. Excel版本不兼容:请确认你使用的Excel版本是否支持调用指定的系统函数。有些Excel函数可能只在特定的Excel版本中可用,如果你的Excel版本不支持该函数,会导致函数调用失败。
4. Excel设置不兼容:有些Excel设置可能会影响系统函数的运行。比如,如果你的Excel设置中禁用了宏,可能会导致`Application.Run`函数无法调用Excel系统函数。
在调试`Application.Run`函数调用Excel系统函数时,你可以尝试在Excel函数库中手动调用该函数,以确认函数名称和参数是否正确。如果手动调用Excel函数仍然失败,请检查Excel设置和版本,以确定是否有其他因素导致函数调用失败。