Bonjour,
J'ai une collection qui contient des éléments d'un type que j'ai créé.
Voici un code provoquant une erreur.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
Public Type typeTest
    test1 As String
    test2 As String
End Type
Public Sub test()
    Dim test As typeTest
    Dim colTest As New Collection
    test.test1 = "test1"
    test.test2 = "test2"
    col.Add test
End Sub
Si vous arrivez à modifier pour enlever cette erreur de compilation, c'est bon.

Message d'erreur:
Erreur de compilation:

Seuls les types définis par l'utilisateur et qui sont définis dans les modules d'objets publics peuvent être convertis depuis ou vers un variant, ou passés à des fonctions à liaison tardive
J'ai essayé de déclarer en private ou en public rien n'y fait.
Je ne vois pas comment définir des types dans des modules d'objets publics.
Qu'est-ce qu'un module d'objets public?

Le seul truc s'y rapprochant que j'ai trouvé dans la FAQ c'est:http://vb.developpez.com/faq/?page=Langage#renvoi_type
Mais bon, c'est pour renvoyer un type, le mettre dans ue collection c'est une autre affaire.

Dans le forum, il y a ça:http://www.developpez.net/forums/viewtopic.php?p=121804, mais je n'y arrive toujours pas.


Je pourrai sans doute contourner le problème en faisant autrement, mais j'aimerai bien comprendre.

Merci d'avance.