Pour faire simple, vous devez avoir une fonction qui renvoie une variante. Je comprends que vous aimiez le faire d'une manière orientée objet, mais si vous voulez juste "le faire", la méthode procédurale est la plus facile.
Bien qu'il existe plusieurs façons de procéder, voici celle que je préfère. Notez que vous pouvez créer une liste de n'importe quel type de données primitives (chaîne de caractères, variante, entier, long, etc.).
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
Pour utiliser myfunc
sub initialise
dim anotherlist list as variant
anotherlist = myfunc
end sub
Vous pouvez ajouter des paramètres à myfunc si nécessaire en définissant simplement myfunc de la manière suivante
function myfunc(val1 as variant, val2 as variant) as variant
Vous l'appelez de la même manière avec des paramètres comme celui-ci
anotherlist = myfunc("a value", "another value")
Notez que "variant" est votre type de données universel. Ce qui est important, c'est que myfunc en tant que variante est la seule façon de renvoyer des listes et des variantes à partir d'une fonction.