Public Function RETURN_Equipment(Optional category As String) As Collection
Dim config As classConfiguration
Set config = New classConfiguration
Dim item As classItem
Set item = New classItem
Dim myCollection As Collection
Set myCollection = New Collection
For Each config In Configurations
For Each item In config.colItems
If IsMissing(category) Then
myCollection.add item
ElseIf InStr(category, "mainframe") <> 0 And item.category = "mainframe" Then
myCollection.add item
MsgBox "Fired!"
ElseIf category = "accessory" And item.category = "accessory" Then
Else
End If
Next
Next
RETURN_Equipment = myCollection
End Function
Run Code Online (Sandbox Code Playgroud)
我一直在
编译错误:
参数不是可选的
我在最后一行得到了错误
RETURN_Equipment = myCollection
Run Code Online (Sandbox Code Playgroud)
我理解错误信息,它告诉我我没有填写参数.但我只有一个参数,我已经声明它是可选的.看起来代码认为我试图从函数中调用函数?
是什么赋予了?
我收到此错误是因为我在尝试从函数返回结果时使用了错误的函数名称.我这样做:
Function MyFuncA(arg as String)
MyFuncB = arg 'The problem is I'm using MyFuncB instead of MyFuncA
End Function
Run Code Online (Sandbox Code Playgroud)
发生这种情况是因为我从其他地方复制了一个函数并更改了名称,但没有更改返回语句.这不是OP的问题,但我收到了相同的错误消息.
归档时间: |
|
查看次数: |
73223 次 |
最近记录: |