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 :

Filtrer les valeurs d'une ListBox (issues d'une feuiles excel) dans un UserForm [XL-2010]


Sujet :

Macros et VBA Excel

Mode arborescent

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Chargé d'affaire
    Inscrit en
    Juillet 2014
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Aube (Champagne Ardenne)

    Informations professionnelles :
    Activité : Chargé d'affaire
    Secteur : Conseil

    Informations forums :
    Inscription : Juillet 2014
    Messages : 17
    Par défaut Filtrer les valeurs d'une ListBox (issues d'une feuiles excel) dans un UserForm
    Bonjour à tous et merci à tous pour votre aide !

    J'ai un tableau Excel inséré dans un UserForm à l'aide d'un ListBox.
    Je cherche à ajouter un filtre dans la ListBox afin de n'afficher que les valeurs qui contiennent par exemple "325" choisie dans un TextBox.
    A terme je souhaite sélectionner une des lignes dans ce ListBox et mettre en gras la ligne correspondante dans la feuille "Essai". Cela ressemble à ça :

    Nom : 1.JPG
Affichages : 623
Taille : 28,8 Ko

    Nom : 2.JPG
Affichages : 471
Taille : 27,8 Ko

    Je me suis basé sur le code que j'ai trouvé sur cette discussion sur le forum qui m'a beaucoup aidé : Insérer un tableau excel dans un UserForm
    (Merci à eux).

    Avez vous des pistes pour pouvoir filtrer ma ListBox ?

    J'ai ajouté le fichier Excel en PJ.

    Merci d'avance pour votre aide.

    Axel


    PS :
    Voila le code source :
    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
    21
    22
    23
    24
    25
    26
    27
    Private Sub CommandButton1_Click()
        With ListBox1
            For i = 0 To .ListCount - 1
                If .Selected(i) = True Then mess = mess & i + 1 + 1 & vbCrLf ' tu peut mettre 2 bien entendu
            Next
        End With
        MsgBox mess
    End Sub
    Private Sub ListBox1_Click()
        MsgBox ListBox1.ListIndex
    End Sub
    Private Sub UserForm_Activate()
        Dim plage As Range, i As Long, large
        With Sheets("Essai")
            Set plage = .Range("A1").CurrentRegion.Offset(1, 0)
            For i = 1 To plage.Columns.Count: large = large & ";" & Round(plage.Columns(i).Width): Next    ' on capture la largeur des colonnes
            large = Mid(large, 2, 200)
            With Me.ListBox1
                .RowSource = plage.Address
                .ColumnHeads = True
                .ColumnWidths = large
                .ColumnCount = plage.Columns.Count
                .ListStyle = 1
                .MultiSelect = 1
            End With
        End With
    End Sub
    Fichiers attachés Fichiers attachés

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

Discussions similaires

  1. Récupération d'une valeur d'une variable issue d'une listbox
    Par chris78200 dans le forum Interfaces Graphiques
    Réponses: 2
    Dernier message: 02/04/2012, 11h47
  2. Réponses: 8
    Dernier message: 15/05/2006, 14h33
  3. Réponses: 4
    Dernier message: 05/01/2006, 20h29
  4. Retrouver les valeurs des paramètres des fonctions d'une DLL
    Par Bernard Martineau dans le forum Langage
    Réponses: 6
    Dernier message: 08/11/2005, 10h42
  5. copie d'une table Y d'une base A vers une table X d'une base
    Par moneyboss dans le forum PostgreSQL
    Réponses: 1
    Dernier message: 30/08/2005, 21h24

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