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 :

Alimenter deux listBox [XL-2003]


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
    Février 2009
    Messages
    334
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 334
    Par défaut Alimenter deux listBox
    Bonjour,
    Dans un Usf, j'ai 2 ListBox (1 & 2)

    Dans :

    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
    Private Sub UserForm_Initialize()
    'Remplir la ListBox1
    'spécifie que la première cellule précédent
    'la plage source est utilisée comme titre dans la ListBox.
    ColumnHeads = True
    Dim i As Integer, Valeur As Variant, Unique As Collection
    'Application.ScreenUpdating = False
    Sheets("mp3").Activate
    'Calcul le nombre de lignes non vide en colonne A
    i = Range("A65536").End(xlUp).Row
    'Pour eviter les messages d'erreur
    On Error Resume Next
     
    On Error GoTo 0
     
    'Me.ComboBox1.SetFocus
    Me.ComboBox1.List = Range("mp3!A1:B5000").Value
    Sheets("Sel").Activate
    'Application.ScreenUpdating = True
    End Sub
    Dans la partie code de l'Usf :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Private Sub ListBox1_Change()
    Sheets("Sel").Activate
    Range("B9").Value = Me.ListBox1.Value
    End Sub
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Private Sub ListBox2_Change()
    Sheets("Sel").Activate
    Range("B10").Value = Me.ListBox2.Value
    End Sub
    Comment alimenter la Listbox2 à partir de Sheets("Fb").Activate

    Codes m'ont été gentiment donné par RJamin que je remercie de nouveau.

  2. #2
    Expert confirmé
    Homme Profil pro
    aucune
    Inscrit en
    Septembre 2011
    Messages
    8 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Septembre 2011
    Messages : 8 208
    Par défaut
    Bonjour,

    Comment alimenter la Listbox2 à partir de Sheets("Fb").Activate
    Ça a l'air d'être ton seul problème ? A partir de quoi ListBox1 est-elle alimentée ?

    signifie que tu sélectionnes cette feuille. Ça ne dit pas la plage à insérer dans la listbox.

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Février 2009
    Messages
    334
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 334
    Par défaut
    Bonjour Daniel,
    Je te remercie de t'intéresser à ma demande et de l'aide que tu m'apporte.
    La Listbox1 est alimentée par la feuille "mp3" A2:B
    La Listbox2 est alimentée par la feuille "Fb" A2:C
    Mes 'connaissances' sont vraiment trop faibles, mais je peuxx joindre le fichier au cas ou.

  4. #4
    Expert confirmé
    Homme Profil pro
    aucune
    Inscrit en
    Septembre 2011
    Messages
    8 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Septembre 2011
    Messages : 8 208
    Par défaut
    Pour ListBox2 :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
        Dim Plage As Range
        With Sheets("Fb")
        Set Plage = .Range(.[A2], .Cells(.Rows.Count, 3).End(xlUp))
        Me.ListBox1.List = Plage.Value
    et pour Listbox1 :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
        Dim Plage As Range
        With Sheets("mp3")
        Set Plage = .Range(.[A2], .Cells(.Rows.Count, 2).End(xlUp))
        Me.ListBox1.List = Plage.Value

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Février 2009
    Messages
    334
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 334
    Par défaut
    re,
    N'y arrivant pas, je me permets de vous joindre le fichier pour une meilleure approche.
    En vous remerciant
    Fichiers attachés Fichiers attachés

  6. #6
    Expert confirmé
    Homme Profil pro
    aucune
    Inscrit en
    Septembre 2011
    Messages
    8 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Septembre 2011
    Messages : 8 208
    Par défaut
    J'ai ajouté ce code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    'Remplir la ListBox1
        Me.ListBox1.Clear
        With Sheets("mp3")
            Set Plage = .Range(.[A2], .Cells(.Rows.Count, 2).End(xlUp))
            Me.ListBox1.List = Plage.Value
        End With
     
    'Remplir la ListBox2
        Me.ListBox2.Clear
        With Sheets("Fb")
            Set Plage = .Range(.[A2], .Cells(.Rows.Count, 1).End(xlUp)).Resize(, 3)
            Me.ListBox2.List = Plage.Value
        End With
    dans la macro :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Private Sub UserForm_Initialize()
    J'ai également supprimé la propriété "RowSource" des deux ListBoxes. Si ce n'est pas clair, je te retourne le classeur.

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

Discussions similaires

  1. Ajout et Suppression entre deux listBox
    Par sacofan dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 07/01/2007, 17h02
  2. focus entre deux listbox
    Par krokmitaine dans le forum Delphi
    Réponses: 6
    Dernier message: 13/12/2006, 07h18
  3. formulaire alimentant deux tables
    Par tojiji dans le forum Access
    Réponses: 1
    Dernier message: 24/07/2006, 02h42
  4. Réponses: 12
    Dernier message: 22/06/2006, 12h09
  5. [VB.NET] Problème pour alimenter une listbox.
    Par gueguen23 dans le forum Windows Forms
    Réponses: 6
    Dernier message: 17/01/2005, 14h05

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