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 :

Petite question sur Userform "combobox" [XL-2003]


Sujet :

Macros et VBA Excel

  1. #1
    Membre confirmé Avatar de Maiden002
    Profil pro
    Étudiant
    Inscrit en
    Juillet 2009
    Messages
    137
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2009
    Messages : 137
    Par défaut Petite question sur Userform "combobox"
    Bonjour,

    J'aurai une petite question sur les Combobox dans une Userform.


    Je sais que pour l'initialisé avec des données fixe il faut faire

    combobox.AddItem "TOTO"

    Mais ce que je cherche sa serai d'ajouter une variable qui contient plusieurs données (il s'agit d'une liste) appelé "List"

    j'ai essayer avec combobox.AddItem List mais sa doit pas marcher.

    Sinon pour info ma variable List contient A1 à A200

    Merci de votre aide

  2. #2
    Membre Expert Avatar de laetitia
    Profil pro
    Inscrit en
    Décembre 2002
    Messages
    1 281
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : France

    Informations forums :
    Inscription : Décembre 2002
    Messages : 1 281
    Par défaut
    bonjour Maiden002 le forum essai comme cela

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Private Sub UserForm_Initialize()
    ComboBox1.RowSource = "List"
    End Sub

  3. #3
    Membre confirmé Avatar de Maiden002
    Profil pro
    Étudiant
    Inscrit en
    Juillet 2009
    Messages
    137
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2009
    Messages : 137
    Par défaut
    Bonjour

    Merci pour ta réponse

    Sa marche nikel. Mais maintenant je rencontre un probléme que je n'aurai pas penser ^^.

    En faite, étant donné que c'est une plage comme j'ai dit de A1 a A200 il est possible que tout le tableau ne soit pas rempli, j'avais créer cette variable pour avoir de la place par la suite.

    Donc imaginons que dans ma liste j'ai les 50 premier ligne pleine, mais les 150 restante sont vide.

    Dans la combobox, il prend en compte les vide, donc il me rajoute 150 case Vide dans la liste déroulante. Est il possible de lui dire de pas prendre en compte les case vide et de n'afficher que les valeur pleine. ??

    Merci beaucoup

  4. #4
    Membre Expert Avatar de laetitia
    Profil pro
    Inscrit en
    Décembre 2002
    Messages
    1 281
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : France

    Informations forums :
    Inscription : Décembre 2002
    Messages : 1 281
    Par défaut
    re, essai comme cela !!

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ComboBox1.List = Range([A1], [a65536].End(xlUp)).Value

  5. #5
    Membre confirmé Avatar de Maiden002
    Profil pro
    Étudiant
    Inscrit en
    Juillet 2009
    Messages
    137
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2009
    Messages : 137
    Par défaut
    Super Nikel sa marche

    Merci beaucoup

  6. #6
    Membre expérimenté
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    226
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Avril 2008
    Messages : 226
    Par défaut
    Slt Forum, Maiden, Laetitia,

    Une autre méthode, ta liste est supposée être en A1 de la feuille 1.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Private Sub UserForm_Initialize()
     
        With Sheets("Feuil1")
            For i = 1 To .Range("A65000").End(xlUp).Row
                If .Cells(i, 1) <> .Cells(i - 1, 1) Then
                    ComboBox1.AddItem .Cells(i, 1).Value
                End If
            Next
        End With
     
    End Sub
    Cdt, Hulk.

  7. #7
    Membre Expert Avatar de laetitia
    Profil pro
    Inscrit en
    Décembre 2002
    Messages
    1 281
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : France

    Informations forums :
    Inscription : Décembre 2002
    Messages : 1 281
    Par défaut
    bonjour Antoniom le forum tu as teste ton code ???


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Dim c As Range
    With Sheets("Feuil1")
    For Each c In .Range("A1:a" & .Range("A65536").End(xlUp).Row)
    ComboBox1 = c
    If ComboBox1.ListIndex = -1 And ComboBox1 <> "" Then ComboBox1.AddItem c
     Next c
    End With
    en utilisant un objet ou une collection

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Sub test5()
    Dim t, z As Variant, l As Object, i As Long
    On Error Resume Next
    Set l = CreateObject("Scripting.Dictionary")
    t = Range("A1:a" & Range("A65536").End(xlUp).Row)
    For i = LBound(t) To UBound(t)
    l.Add t(i, 1), t(i, 1): Next
    For Each z In l
    If z <> "" Then ComboBox1.AddItem z
     Next
    End Sub

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

Discussions similaires

  1. une petite question sur les combobox
    Par kerkennah dans le forum Windows Forms
    Réponses: 3
    Dernier message: 11/01/2007, 05h59
  2. [Visuel XP] Petite question sur le theme XP...
    Par ZoumZoumMan dans le forum C++Builder
    Réponses: 12
    Dernier message: 20/01/2005, 14h41
  3. Petite question sur les performances de Postgres ...
    Par cb44 dans le forum PostgreSQL
    Réponses: 5
    Dernier message: 13/01/2004, 13h49

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