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 :

Vérifier si une valeur se trouve déjà dans une list box


Sujet :

VB 6 et antérieur

  1. #1
    Membre éprouvé
    Avatar de beegees
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2004
    Messages
    3 610
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2004
    Messages : 3 610
    Points : 1 277
    Points
    1 277
    Par défaut Vérifier si une valeur se trouve déjà dans une list box
    Salut tout le monde,
    J'ajoute un enregistrement dans une liste de cette façon :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
     Public Sub BDRemplirListeDD(ByVal sql As String, ByRef Liste As Control)
        Dim rsTable As Recordset
     
        If (TypeOf Liste Is ListBox) Or (TypeOf Liste Is ComboBox) Then
            Set rsTable = BD.OpenRecordset(sql, dbOpenSnapshot)
            Liste.Clear
            While Not rsTable.EOF
                Liste.AddItem rsTable(0)
     
                Liste.AddItem rsTable(2)
                Liste.ItemData(Liste.NewIndex) = rsTable(1)
     
                rsTable.MoveNext
            Wend
        End If
    End Sub
    J'aimerais avant cette ligne :

    [code ] Liste.AddItem rsTable(2) [/code] vérifier si l'élément ne se trouve

    pas déjà dans la liste.

    Comment puis-je faire cela svp ?

    Je travaille avec une ListBox.

    Sql vaut ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
        sql = "SELECT DISTINCT parametre.nom, parametre.id,valeur_parametre.valeur,parametre.type_entrant FROM parametre INNER JOIN valeur_parametre ON parametre.id = valeur_parametre.ref_parametre"
    Y-a-t'il une méthode qui permet de parcourir les entrées d'une listbox ?

    Dois-je ouvrir un nouveau recordset ?

    Merci d'avance pour l'aide.

    beegees

  2. #2
    Expert confirmé
    Avatar de pc75
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    3 662
    Détails du profil
    Informations personnelles :
    Âge : 68
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Septembre 2004
    Messages : 3 662
    Points : 4 047
    Points
    4 047
    Par défaut
    Bonjour,

    Tu as la propriété ListCount :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    For i = 0 to Liste.ListCount  - 1
    .....

  3. #3
    Membre habitué
    Homme Profil pro
    Analyste développeur VB6, SQL, VB.NET, C#
    Inscrit en
    Avril 2003
    Messages
    111
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Analyste développeur VB6, SQL, VB.NET, C#
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2003
    Messages : 111
    Points : 141
    Points
    141
    Par défaut
    bonjour

    ceci devrait répondre à ton besoin

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    '#déclarations
    Dim lngCount As Long
    Dim blnItemExists As Boolean
     
    '-->partie en remplacemment de ta ligne "Liste.AddItem rsTable(2)"
     
    '#scruter la liste existante pour déterminer si l'élément existe ou non
    blnItemExists = False
    For lngCount = 0 To Liste.ListCount - 1
        If Liste.List(lngCount) = rsTable(2) Then
            blnItemExists = True
            Exit For
        End If
    Next lngCount
    '#si l'élément n'a pas été trouvé...
    If blnItemExists = False Then
        Liste.AddItem rsTable(2)
    End If
    cdlt,
    N'oubliez pas le tag .

  4. #4
    Membre éprouvé
    Avatar de beegees
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2004
    Messages
    3 610
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2004
    Messages : 3 610
    Points : 1 277
    Points
    1 277
    Par défaut
    Bonjour,

    Un tout grand merci à vous deux.

    Mon problème est maintenant grâce à vos réponses.

    Encore merci
    beegees

  5. #5
    Membre expert Avatar de OhMonBato
    Homme Profil pro
    Inscrit en
    Mars 2007
    Messages
    2 660
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2007
    Messages : 2 660
    Points : 3 685
    Points
    3 685
    Par défaut
    Je suis pas spécialiste en database, mais puisque je vois que la liste est remise à 0 dans ta procédure BDRemplirListeDD, y'aurait pas moyen plutôt de chercher les doublons dans ta database avant de remplir la liste ?
    Pour VB6 : N'oubliez pas d'aller voir la FAQ et les Tutoriels
    Vous trouvez une reponse particulierement utile ? Votez pour !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [XSLT] mettre une valeur d'un XML dans une variable ?
    Par xiii34 dans le forum XSL/XSLT/XPATH
    Réponses: 2
    Dernier message: 13/04/2007, 18h14
  2. Réponses: 1
    Dernier message: 26/03/2007, 01h12
  3. Réponses: 3
    Dernier message: 21/11/2006, 12h35
  4. insérer une valeur de type float dans une abse de données
    Par Stephane_br dans le forum Langage SQL
    Réponses: 2
    Dernier message: 02/11/2005, 10h47
  5. [MySQL] Pb d'insertion d'une valeur de champ select dans une Bdd
    Par Mimisator dans le forum PHP & Base de données
    Réponses: 20
    Dernier message: 20/10/2005, 18h51

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