簡単に言えば、バリアントを返す関数が必要です。オブジェクト指向の方法でそれを行うのが好きなのはわかりますが、手続き的に「完了」したい場合は最も簡単です。
これを行うにはいくつかの方法がありますが、これが私の好みの方法です。任意のプリミティブ データ型のリストを作成できることに注意してください (つまり、string、variant、integer、long など)。
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 が、関数からリストとバリアントを返す唯一の方法であることです。