Bon ça fait longtemps que le message a été posté mais j'ai été confronté au mê^me problème et j'ai trouvé la solution.
je le poste au cas où cela pourraitaider qqun
Apres avoir ajouté sa classe à la collection il suffit tout bêtement d'en liberer
l'space memoire en lui affectant un 'nothing'. Cela permettra que le programme pointe sur une autre occurence de la classe
-------------------------------
Réponse au message :
-------------------------------
> D'apres moi c une histoire de référence un peu comme en C qui fait l'erreur.
> Permission doit etre une classe si je lis bien.. ou peut-etre un type.
> Quand tu l'add dans ta collection tu add juste le lien vers l'élément de ta classe que ta créer avec
> set NewPermissions = new permission
> alors c toujours le meme élément vers lequel il pointe. Donc lorsque tu change ca valeur c normal que la valeur de tout les autres changes aussi puisque ce n'est en veritée qu'un seul et meme élément qui est relié a tout tes items de ta collection.
>
> En résumé je te dirais de créer un nouvelle élément permission pour chaque add dans ta collection.
> Bon je suis pas sure que c vraiment ca ton bug, mais d'apres ce que tu dit ca me semble bien possible.
> J'espere que ca pourra t'aider un peu et surtout que t'arrivera a comprendre ce que j'ai écris, car je suis pas forte dans la facon d'expliquer.
>
>
>
> -------------------------------
> Réponse au message :
> -------------------------------
>
> 'alut...Voilà comment je rempli ma collection...
>
> FIND_PERM()
> set NewPermissions = new permission
> dim Newcoll as collection
>
> While (Not Recordset.EOF) '# on remplit la collection
> '#avec result de requete
> NewPermissions.Nom_perm = Recorset!Nom_perm
> Newcoll.Add NewPermissions
>
> Recordset.MoveNext
> Wend
>
> ET AU MOMENT DE RECUPERER LE CONTENU IL ME DONNE LE NOMBRE EXACT D'ELEMENT...MAIS LEURS VALEUR EST IDENTIQUE (=DERNIER ELEMENT INTRODUIT DANS NewColl)...
>
> Dim MyObject As Object
>
> Set Objpermissions = New Permissions
> Set Newcoll = New Collection
> Set Newcoll = Objpermissions.FIND_PERM
> MsgBox Newcoll.Item(1).nom_perm '
> MsgBox Newcoll.Item(2).nom_perm ' contenu
> MsgBox Newcoll.Item(3).nom_perm ' identique
> MsgBox Newcoll.Item(4).nom_perm '
>
> ....Please Help

>