简单地说,你必须有一个返回变体的函数。我可以看到您喜欢以面向对象的方式进行操作,但是如果您只想通过程序“完成”是最简单的。
虽然有几种方法可以做到这一点,但这是我的首选方式。请注意,您可以创建任何原始数据类型的列表(即字符串、变体、整数、长整数等)。
Function myfunc as variant
dim mylist list as variant
mylist("somename") = "the value you want to store"
mylist("someothername") = "another value"
myfunc = mylist
End Function
使用 myfunc ..
sub initialise
dim anotherlist list as variant
anotherlist = myfunc
end sub
如果需要,您可以通过简单地以这种方式定义 myfunc 来向 myfunc 添加参数
function myfunc(val1 as variant, val2 as variant) as variant
你用像这样的参数以同样的方式调用它
anotherlist = myfunc("a value", "another value")
请注意,“变体”是您的通用数据类型。重要的是 myfunc 作为变体是您可以从函数返回列表和变体的唯一方法。