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 :

Rechercher et sélectionner dans la ListBox2 les valeurs sélectionnée dans Listbox1 (multi sélection)


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    842
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 842
    Par défaut Rechercher et sélectionner dans la ListBox2 les valeurs sélectionnée dans Listbox1 (multi sélection)
    Bonjour,

    Voilà le but de ce bout de code : rechercher et sélectionner dans la Listbox2 les items sélectionnés dans la ListBox1
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Private Sub CommandButton1_Click()
        Dim i As Integer, trouvé As Boolean, x, intPosition
        'boucle sur les éléments de la listbox
        For i = 0 To ListBox2.ListCount - 1
            If ListBox1.Selected(i) = True Then
                x = Application.Match(ListBox1.List(i), ListBox2.List, 0)
                ListBox2.Selected(x - 1) = True 'Sélectionne un item de liste
                'remonter la dernière ligne sélectionnée au top index de la ListBox
                ListBox2.TopIndex = Me.ListBox1.ListIndex
            End If
        Next i
    End Sub
    Je coince sur un truc certainement tous simple : comment intercepter l'erreur si aucun item existe dans la ListBox2 ??

    Merci d'avance pour votre aide.

  2. #2
    Expert confirmé

    Homme Profil pro
    Curieux
    Inscrit en
    Juillet 2012
    Messages
    5 169
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Curieux
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Juillet 2012
    Messages : 5 169
    Billets dans le blog
    5
    Par défaut
    Bonjour,

    tu peux tester le type de ta variable x après avoir fait la recherche via match.

    Il me semble qu'il va te renvoyer un type error

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    842
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 842
    Par défaut
    Bonjour joe.levrai, le forum,

    Merci pour votre réponse.

    J'ai testé le type de variable x après avoir effectué la recherche via match et ça fonctionne très bien.

    Dans l'UserForm contenant 2 ListBox et un bouton de commande "Sélectionner", voici mon code corrigé :
    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
    Private Sub CommandButton1_Click()
        Dim i As Integer, x
        'boucle sur les éléments de la listbox
        For i = 0 To ListBox2.ListCount - 1
            If ListBox1.Selected(i) = True Then
                x = Application.Match(ListBox1.List(i), ListBox2.List, 0)
                If VarType(x) = vbError Then
                    Me.ListBox1.Selected(i) = False
                Else
                    ListBox2.Selected(x - 1) = True 'Sélectionne un item de liste
                End If
                'remonter la ligne dernière ligne sélectionnée au top index de la ListBox
                ListBox2.TopIndex = Me.ListBox1.ListIndex
            End If
        Next i
    End Sub
    Nom : Image1.jpg
Affichages : 66
Taille : 14,5 Ko

    Merci pour votre aide question résolue.

Discussions similaires

  1. Réponses: 5
    Dernier message: 28/05/2012, 15h53
  2. Recherche d'une String dans les valeurs d'une HashMap
    Par 4rocky4 dans le forum Collection et Stream
    Réponses: 2
    Dernier message: 04/05/2011, 15h24
  3. [XL-2003] Afficher les valeurs d'une listbox multi dans le tableur
    Par tarantino dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 05/10/2010, 09h28
  4. Réponses: 9
    Dernier message: 27/07/2010, 14h30
  5. Réponses: 2
    Dernier message: 16/01/2008, 16h16

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