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

Macros et VBA Excel Discussion :

listbox sans doublons


Sujet :

Macros et VBA Excel

  1. #1
    Expert éminent Avatar de casefayere
    Homme Profil pro
    RETRAITE
    Inscrit en
    Décembre 2006
    Messages
    5 138
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : RETRAITE
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Décembre 2006
    Messages : 5 138
    Points : 9 548
    Points
    9 548
    Par défaut listbox sans doublons
    Bonsoir à tou(te)s,

    J'ai adapté cette procedure pour eviter les doublons d'une listbox dans un userform, jusque là, pas de problème :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Sub test1()
    Dim Cell As Range
    With Worksheets("AYANTS DROIT")
    CHOIX_SALARIE.CHOIX.Clear
    For Each Cell In .Range("c8:c" & .Range("c" & Rows.Count).End(xlUp).Row)
    If .Range("c" & Cell.Row) <> .Range("c" & Cell.Row - 1) And .Range("d" & Cell.Row) = "ACTIF" Then
        If CHOIX_SALARIE.CHOIX.ListIndex = -1 Then
        CHOIX_SALARIE.CHOIX.AddItem Cell
        End If
    End If
    Next Cell
    End With
    End Sub
    mais si j'ajoute du code, voir ci-dessous, les doublons réapparaissent :
    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
    19
    20
    Sub test1()
    Dim Cell As Range
    With Worksheets("AYANTS DROIT")
    CHOIX_SALARIE.CHOIX.Clear
    For Each Cell In .Range("c8:c" & .Range("c" & Rows.Count).End(xlUp).Row)
    'début de partie ajoutée
    If .Range("d" & Cell.Row) = "ACTIF" Then
        CHOIX_SALARIE.CHOIX.AddItem Cell
        If CHOIX_SALARIE.CHOIX > 1 Then GoTo suite
    End If
    suite:
    ' fin de partie ajoutée
    If .Range("c" & Cell.Row) <> .Range("c" & Cell.Row - 1) And .Range("d" & Cell.Row) = "ACTIF" Then
        If CHOIX_SALARIE.CHOIX.ListIndex = -1 Then
        CHOIX_SALARIE.CHOIX.AddItem Cell
        End If
    End If
    Next Cell
    End With
    End Sub
    Quelqu'un peut'il voir mon problème, je ne comprends pas
    merci d'avance
    Cordialement,
    Dom
    _____________________________________________
    Vous êtes nouveau ? pour baliser votre code, cliquer sur cet exemple : Anomaly
    pensez à cliquer sur si votre problème l'est
    Par contre, il est désagréable de voir une discussion résolue sans message final du demandeur (satisfaction, désarroi, remerciement, conclusion...)

  2. #2
    Expert éminent Avatar de casefayere
    Homme Profil pro
    RETRAITE
    Inscrit en
    Décembre 2006
    Messages
    5 138
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : RETRAITE
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Décembre 2006
    Messages : 5 138
    Points : 9 548
    Points
    9 548
    Par défaut je suis bête a bouffer du foin
    Ma solution était là, tout simplement
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Sub test1()
    Dim Cell As Range
    With Worksheets("AYANTS DROIT")
    CHOIX_SALARIE.CHOIX.Clear
    For Each Cell In .Range("c8:c" & .Range("c" & Rows.Count).End(xlUp).Row)
    If .Range("d" & Cell.Row) = "ACTIF" Then
        CHOIX_SALARIE.CHOIX.AddItem Cell
    End If
    Next Cell
    End With
    End Sub
    Plus besoin de se décarcasser pour moi
    Cordialement,
    Dom
    _____________________________________________
    Vous êtes nouveau ? pour baliser votre code, cliquer sur cet exemple : Anomaly
    pensez à cliquer sur si votre problème l'est
    Par contre, il est désagréable de voir une discussion résolue sans message final du demandeur (satisfaction, désarroi, remerciement, conclusion...)

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

Discussions similaires

  1. [Débutant] Copie items sélectionnés listbox sans doublon
    Par RKYDA dans le forum VB.NET
    Réponses: 4
    Dernier message: 19/06/2012, 16h11
  2. [MySQL] listbox sans doublon avec disabled
    Par akara dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 23/03/2009, 15h17
  3. Réponses: 0
    Dernier message: 15/01/2009, 12h00
  4. listbox sans doublons
    Par abouhossam dans le forum Macros et VBA Excel
    Réponses: 18
    Dernier message: 22/10/2008, 18h13
  5. ListBox sans Doublons
    Par pobrouwers dans le forum VB 6 et antérieur
    Réponses: 5
    Dernier message: 20/02/2007, 17h41

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