IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VB 6 et antérieur Discussion :

ajout d'un nouvel élément dans une collection


Sujet :

VB 6 et antérieur

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    111
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 111
    Points : 49
    Points
    49
    Par défaut ajout d'un nouvel élément dans une collection
    Bonjour,

    j'ai un pb de rajout d'un élément dans une collection (en VB6), j'ai l'erreur " cette clé est déjà associée à un élément de cette collection"

    Si j'ai bien compris il faut créer une nouvelle clé pour cet élément, je ne vois pas comment se fait cette création?????

    ma ligne de code qui permet d'ajouter mon nouvel élément est :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    moDependOfScroll.Add elt.Libelle & "(" & elt.filtre & ")", "K" & elt.code
    "K" est une string qui permet de convertir mon code en chaine de caractère.

    Merci.

  2. #2
    Expert éminent sénior


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Points : 20 040
    Points
    20 040
    Par défaut
    et tu sur que ton elt.Code... à bien évoluer entre 2 insertion

    sur la fenêtre de debug.. clique sur "Débogage" puis passe le curseur sur ta variable elt.code histoire de connaître son contenu ...

  3. #3
    Membre expert
    Avatar de Delbeke
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    2 675
    Détails du profil
    Informations personnelles :
    Âge : 70
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 2 675
    Points : 3 696
    Points
    3 696
    Par défaut
    De plus, pour info, il n'est pas necessaire de mettre le K

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    moDependOfScroll.Add elt.Libelle & "(" & elt.filtre & ")", Cstr(elt.code)
    La fonction Cstr assurera que la clé sera bien un string
    En général, on ne demande de conseils que pour ne pas les suivre ou, si on les a suivis, reprocher à quelqu'un de les avoir donnés
    (ALEXANDRE DUMAS)

    N'hésitez pas à visiter ma page de contributions

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    111
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 111
    Points : 49
    Points
    49
    Par défaut
    ah oui c'est vrai dans elt.code j ai le dernier élément de la collection!! ca n'a pas meme pas ajouter mon élément!! comment je peux corriger cela svp.

  5. #5
    Expert éminent sénior


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Points : 20 040
    Points
    20 040
    Par défaut
    Citation Envoyé par sasuma Voir le message
    ah oui c'est vrai dans elt.code j ai le dernier élément de la collection!! ca n'a pas meme pas ajouter mon élément!! comment je peux corriger cela svp.
    en changeant la valeur d'elt.code ... pour chaque éléments ...

    et tu nous as toujours pas dis comment été renseigné ton elt.code !!

  6. #6
    Expert éminent
    Avatar de ThierryAIM
    Homme Profil pro
    Inscrit en
    Septembre 2002
    Messages
    3 673
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2002
    Messages : 3 673
    Points : 8 524
    Points
    8 524
    Par défaut
    Citation Envoyé par sasuma Voir le message
    Si j'ai bien compris il faut créer une nouvelle clé pour cet élément, je ne vois pas comment se fait cette création?????
    en utilisant le Count de la Collection, pardi ! (moDependOfScroll.Count)
    Vous vous posez une question, la réponse est peut-être ici :
    Toutes les FAQs VB
    Les Cours et Tutoriels VB6/VBScript
    Les Sources VB6


    Je ne réponds pas aux questions techniques par MP. Utilisez les forums. Merci de votre compréhension

  7. #7
    Membre expert
    Avatar de Delbeke
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    2 675
    Détails du profil
    Informations personnelles :
    Âge : 70
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 2 675
    Points : 3 696
    Points
    3 696
    Par défaut
    L'utilisation de la propriété count de la collection peut mener à une impasse si des éléménts doivent être supprimés dans la collection (et d'autres ajoutés après la supression). Sauf si c'est le dernier. Si tu n'as pas besoin de retrouver un element précis de la collection par une clé, n'utilises pas de clé lors de l'ajout, tout simplement.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    moDependOfScroll.Add elt.Libelle & "(" & elt.filtre & ")"
    Tu pourras accèder au ième element et lister tous les element de la collection soit par boucle (deux type de boucle

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
      For I=1 To moDependOfScroll.count 
        set Obj = moDependOfScroll(ipnt)
      Next
    Ou
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
      For Each Ojb In moDependOfScroll
        '...
      Next
    En général, on ne demande de conseils que pour ne pas les suivre ou, si on les a suivis, reprocher à quelqu'un de les avoir donnés
    (ALEXANDRE DUMAS)

    N'hésitez pas à visiter ma page de contributions

Discussions similaires

  1. [Débutant] Ajouter un nouvel élément dans une liste à partir d'un formulaire
    Par pliza dans le forum Développement Sharepoint
    Réponses: 3
    Dernier message: 27/08/2014, 18h05
  2. Ajout élément dans une collection générique
    Par Methode dans le forum Langage
    Réponses: 6
    Dernier message: 22/08/2011, 17h03
  3. [1.x] Nombre d'éléments dans une collection doctrine
    Par mixka13 dans le forum Symfony
    Réponses: 1
    Dernier message: 29/04/2011, 23h41
  4. Plusieurs éléments dans une collection d'objets
    Par soso78 dans le forum VB.NET
    Réponses: 2
    Dernier message: 25/09/2008, 17h23
  5. Recheche d'un élément dans une collection
    Par pegase06 dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 08/01/2007, 15h30

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo