我很难通过集合获取函数作为执行任何操作的参数。
我有一个输出集合的函数
function ext(P as string) as collection
dim serv as new collection
serv.add P, "1"
set ext = serv
end function
我试图制作第二个功能,收集和吐出他们的第一个项目,但它不起作用
function first (C as collection) as string
first = C(1)
end function
所以当我打电话
first(ext("Apple"))
我应该得到" Apple" 但是我得到了一个值错误。
有谁知道为什么?
答案 0 :(得分:0)
是否与我在excel单元格中键入内容有关?
是的,它与此有关。您无法通过工作表传递Collection
,因此您需要将结构更改为以下内容:
Public Function first(P As String) As String
first = ext(P)(1)
End Function
Private Function ext(P As String) As Collection
Dim serv As New Collection
serv.Add P, "1"
Set ext = serv
End Function
在工作表上,您只需使用first
功能:
=first("Apple")