(Excel)带有可选参数的vba程序不会启动

时间:2018-01-02 21:29:34

标签: vba arguments optional-arguments

我在VBA(在Excel中)有一个程序(Sub),它有一个可选的布尔参数。默认设置为true。当我尝试使用F8启动程序时,它会对我嗤之以鼻,什么都不做。当我尝试用F5启动它时,它会调出程序列表(与Excel本身中的alt-F8相同)。我尝试启动的程序不在列表中。

代码的相关部分只是第一行:

Sub PopulateUniqueIngredientItems(可选SortSheets As Boolean = True)

如果我需要参数,它会启动(但由于缺少参数而失败)。

关于我做错了什么的任何想法?或者,当它有参数时,是否无法直接启动Sub?

1 个答案:

答案 0 :(得分:1)

你可以在没有args的情况下调用它,但是可以从另一个sub:

调用它
Sub anotherSub()
 Call PopulateUniqueIngredientItems
End Sub

Sub PopulateUniqueIngredientItems(Optional SortSheets As Boolean = True)

End Sub