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 :

VBA : Liste déroulante avec une combobox à partir des colonnes de la ligne 1


Sujet :

Macros et VBA Excel

  1. #1
    Membre du Club
    Homme Profil pro
    Apprenti Ingénieur
    Inscrit en
    Janvier 2016
    Messages
    72
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Apprenti Ingénieur

    Informations forums :
    Inscription : Janvier 2016
    Messages : 72
    Points : 41
    Points
    41
    Par défaut VBA : Liste déroulante avec une combobox à partir des colonnes de la ligne 1
    Bonjour tout le monde,

    J'essaye tant bien que mal de créer une liste déroulante dans un userform avec différents codes mais rien n'y fait...

    Alors voilà comment j'ai procédé jusque maintenant:

    1) Dans le userform j'ai utilisé une zone de liste modifiable (combobox2)
    2) J'ai mis le code suivant dans la propriété RowSource de ma combobox2 : "TBR!B1:XFD1" résultat: je n'avais que la valeur de B1 de visible mais pas les autres
    3) Du coup je me suis lancé sur un autre code: ComboBox2.List = worksheets("TBR").Range("B1:XFD1").Value résultat : rien d'affiché

    J'ai tenté d'autres codes qui sont dans le même ordre mais ça n'a pas fonctionné, je suis un peu perdu.

    Pouvez-vous m'aider svp?

    Merci à ceux qui répondront

  2. #2
    Membre actif
    Homme Profil pro
    Ingénieur Qualité (Microtechnique)
    Inscrit en
    Février 2016
    Messages
    188
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Ingénieur Qualité (Microtechnique)
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2016
    Messages : 188
    Points : 265
    Points
    265
    Avant de poser une question avez-vous testé l’enregistreur de macro ?
    http://fauconnier.developpez.com/tut...istreur-macro/
    Merci de passer vos discussion en
    Et sinon un est toujours le bienvenue.

  3. #3
    Membre actif
    Homme Profil pro
    Ingénieur Qualité (Microtechnique)
    Inscrit en
    Février 2016
    Messages
    188
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Ingénieur Qualité (Microtechnique)
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2016
    Messages : 188
    Points : 265
    Points
    265
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Dim i As Byte
        For i = 0 To 1000 'a adapter selon ton nombre de ligne
            ComboBox2.AddItem = Worksheets("TBR").Range("B1").Offset(0, i).Value
        Next i
    ou
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Dim i As Byte
        While IsNull(Worksheets("TBR").Range("B1").Offset(0, i).Value) = False ' si tu veux remplir jusqu'à arriver dans une cellule vide
            ComboBox2.AddItem = Worksheets("TBR").Range("B1").Offset(0, i).Value
            i = i + 1
        Wend
    Avant de poser une question avez-vous testé l’enregistreur de macro ?
    http://fauconnier.developpez.com/tut...istreur-macro/
    Merci de passer vos discussion en
    Et sinon un est toujours le bienvenue.

  4. #4
    Membre du Club
    Homme Profil pro
    Apprenti Ingénieur
    Inscrit en
    Janvier 2016
    Messages
    72
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Apprenti Ingénieur

    Informations forums :
    Inscription : Janvier 2016
    Messages : 72
    Points : 41
    Points
    41
    Par défaut
    Merci d'avoir répondu alors j'ai essayé les deux codes mais j'ai toujours le même résultat je n'ai qu'une seule et même valeur qui s'affiche peu importe le code c''est la valeur de B1.

    Je ne comprends pas du tout parce que les codes sont très logiques

  5. #5
    Membre actif
    Homme Profil pro
    Ingénieur Qualité (Microtechnique)
    Inscrit en
    Février 2016
    Messages
    188
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Ingénieur Qualité (Microtechnique)
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2016
    Messages : 188
    Points : 265
    Points
    265
    Par défaut
    Tes valeurs sont bien dans la même ligne ?
    B1, C1, D1….
    Avant de poser une question avez-vous testé l’enregistreur de macro ?
    http://fauconnier.developpez.com/tut...istreur-macro/
    Merci de passer vos discussion en
    Et sinon un est toujours le bienvenue.

  6. #6
    Membre du Club
    Homme Profil pro
    Apprenti Ingénieur
    Inscrit en
    Janvier 2016
    Messages
    72
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Apprenti Ingénieur

    Informations forums :
    Inscription : Janvier 2016
    Messages : 72
    Points : 41
    Points
    41
    Par défaut
    Oui oui ce sont des valeurs qui sont toutes sur la ligne 1 à partir de B1...

  7. #7
    Membre actif
    Homme Profil pro
    Ingénieur Qualité (Microtechnique)
    Inscrit en
    Février 2016
    Messages
    188
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Ingénieur Qualité (Microtechnique)
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2016
    Messages : 188
    Points : 265
    Points
    265
    Par défaut
    Je crois que j’ai fait une erreur dans mon code.
    Essayes d’enlever les « = »
    Avant de poser une question avez-vous testé l’enregistreur de macro ?
    http://fauconnier.developpez.com/tut...istreur-macro/
    Merci de passer vos discussion en
    Et sinon un est toujours le bienvenue.

  8. #8
    Membre du Club
    Homme Profil pro
    Apprenti Ingénieur
    Inscrit en
    Janvier 2016
    Messages
    72
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Apprenti Ingénieur

    Informations forums :
    Inscription : Janvier 2016
    Messages : 72
    Points : 41
    Points
    41
    Par défaut
    D'enlever tous les égales ? Et je ne les remplace par rien d'autres?

  9. #9
    Membre actif
    Homme Profil pro
    Ingénieur Qualité (Microtechnique)
    Inscrit en
    Février 2016
    Messages
    188
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Ingénieur Qualité (Microtechnique)
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2016
    Messages : 188
    Points : 265
    Points
    265
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ComboBox2.AddItem Worksheets("TBR").Range("B1").Offset(0, i).Value
    Avant de poser une question avez-vous testé l’enregistreur de macro ?
    http://fauconnier.developpez.com/tut...istreur-macro/
    Merci de passer vos discussion en
    Et sinon un est toujours le bienvenue.

  10. #10
    Membre du Club
    Homme Profil pro
    Apprenti Ingénieur
    Inscrit en
    Janvier 2016
    Messages
    72
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Apprenti Ingénieur

    Informations forums :
    Inscription : Janvier 2016
    Messages : 72
    Points : 41
    Points
    41
    Par défaut
    je l'ai fait et ça ne m'affiche rien...

  11. #11
    Membre actif
    Homme Profil pro
    Ingénieur Qualité (Microtechnique)
    Inscrit en
    Février 2016
    Messages
    188
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Ingénieur Qualité (Microtechnique)
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2016
    Messages : 188
    Points : 265
    Points
    265
    Par défaut
    Bon. Procède par étapes.
    Tu connais la fonction debug.print ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Dim i As Byte
        For i = 0 To 5 'a adapter selon ton nombre de ligne
            Debug.print Worksheets("TBR").Range("B1").Offset(0, i).Value
        Next i
    N’oublie pas d’afficher la fenêtre d’Exécution.
    Avec ça tu vas déjà pouvoir identifier si tu arrives a pointer sur les différents éléments que tu veux mettre dans ta liste.
    Dans un deuxième temps, tu essayes :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    ComboBox2.AddItem “valeur 1”
    ComboBox2.AddItem “valeur 2”
    ComboBox2.AddItem “valeur 3”
    ComboBox2.AddItem “valeur 4”
    ComboBox2.AddItem “valeur 5
    Cela te permet de savoir si tu arrives à mettre des valeurs dans ta combobox avec la fonction AddItem
    Avant de poser une question avez-vous testé l’enregistreur de macro ?
    http://fauconnier.developpez.com/tut...istreur-macro/
    Merci de passer vos discussion en
    Et sinon un est toujours le bienvenue.

  12. #12
    Membre du Club
    Homme Profil pro
    Apprenti Ingénieur
    Inscrit en
    Janvier 2016
    Messages
    72
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Apprenti Ingénieur

    Informations forums :
    Inscription : Janvier 2016
    Messages : 72
    Points : 41
    Points
    41
    Par défaut
    J'ai commencé par ton second code pour vérifier si j'arrivais déjà à mettre des valeurs dedans mais rien n'y fait je n'ai rien d'afficher je ne comprend pas...

    Tu mets bien l'ensemble de ces codes sous Private Sub ComboBox2_Change() ?? Pas Initialize?

  13. #13
    Membre actif
    Homme Profil pro
    Ingénieur Qualité (Microtechnique)
    Inscrit en
    Février 2016
    Messages
    188
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Ingénieur Qualité (Microtechnique)
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2016
    Messages : 188
    Points : 265
    Points
    265
    Par défaut
    A non !!!!
    Tu dois le mettre dans UserForm_Initialize() (si il se trouve dans un formulaire)
    Avant de poser une question avez-vous testé l’enregistreur de macro ?
    http://fauconnier.developpez.com/tut...istreur-macro/
    Merci de passer vos discussion en
    Et sinon un est toujours le bienvenue.

  14. #14
    Membre du Club
    Homme Profil pro
    Apprenti Ingénieur
    Inscrit en
    Janvier 2016
    Messages
    72
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Apprenti Ingénieur

    Informations forums :
    Inscription : Janvier 2016
    Messages : 72
    Points : 41
    Points
    41
    Par défaut
    Bon dans tous les cas cela ne fonctionne pas. C'est vraiment bizarre cette histoire je ne comprends pas

  15. #15
    Membre actif
    Homme Profil pro
    Ingénieur Qualité (Microtechnique)
    Inscrit en
    Février 2016
    Messages
    188
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Ingénieur Qualité (Microtechnique)
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2016
    Messages : 188
    Points : 265
    Points
    265
    Par défaut
    Essaye de recréer un combobox pour remplacer celui que tu utilises.
    Avant de poser une question avez-vous testé l’enregistreur de macro ?
    http://fauconnier.developpez.com/tut...istreur-macro/
    Merci de passer vos discussion en
    Et sinon un est toujours le bienvenue.

  16. #16
    Membre actif
    Homme Profil pro
    Ingénieur Qualité (Microtechnique)
    Inscrit en
    Février 2016
    Messages
    188
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Ingénieur Qualité (Microtechnique)
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2016
    Messages : 188
    Points : 265
    Points
    265
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Private Sub UserForm_Activate()
    Dim i As Byte
    i = 0
        While Worksheets("TBR").Range("B1").Offset(0, i).Value <> "" ' si tu veux remplir jusqu'à arriver dans une cellule vide
            ComboBox2.AddItem Worksheets("TBR").Range("B1").Offset(0, i).Value
            i = i + 1
        Wend
    End Sub
    Avant de poser une question avez-vous testé l’enregistreur de macro ?
    http://fauconnier.developpez.com/tut...istreur-macro/
    Merci de passer vos discussion en
    Et sinon un est toujours le bienvenue.

  17. #17
    Membre du Club
    Homme Profil pro
    Apprenti Ingénieur
    Inscrit en
    Janvier 2016
    Messages
    72
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Apprenti Ingénieur

    Informations forums :
    Inscription : Janvier 2016
    Messages : 72
    Points : 41
    Points
    41
    Par défaut
    Désolé mais ça ne fonctionne toujours pas, j'ai essayé de faire un code qui a presque marché :
    En faite dès qu'une valeur de la ligne 1 s'incrémente elle s'incrémente également sur la combobox voila mon code

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Sheets("TBR").Range("XFD1").End(xlToLeft).Offset(0, 1).Value = ActiveSheet.Name 'incrémentation des valeurs colonne par colonne
        Supprimer.ComboBox2.AddItem (ActiveSheet.Name)
    Par le biais de ce code ma combobox se remplit bien par contre le problème c'est qu'il ne garde pas en mémoire les données rentrées quand je ferme et re-ouvre le fichier

  18. #18
    Membre actif
    Homme Profil pro
    Ingénieur Qualité (Microtechnique)
    Inscrit en
    Février 2016
    Messages
    188
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Ingénieur Qualité (Microtechnique)
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2016
    Messages : 188
    Points : 265
    Points
    265
    Par défaut
    Exemple Combobox.xlsm

    Voici un exemple qui fonctionne avec le code que je t'ai donné
    Avant de poser une question avez-vous testé l’enregistreur de macro ?
    http://fauconnier.developpez.com/tut...istreur-macro/
    Merci de passer vos discussion en
    Et sinon un est toujours le bienvenue.

  19. #19
    Membre du Club
    Homme Profil pro
    Apprenti Ingénieur
    Inscrit en
    Janvier 2016
    Messages
    72
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Apprenti Ingénieur

    Informations forums :
    Inscription : Janvier 2016
    Messages : 72
    Points : 41
    Points
    41
    Par défaut
    Oui c'est exactement ce que je recherche mais je ne comprends pas où est mon erreur même en essayant de recopier bêtement ce que tu as fait je n'arrive pas à faire le faire fonctionner

  20. #20
    Membre actif
    Homme Profil pro
    Ingénieur Qualité (Microtechnique)
    Inscrit en
    Février 2016
    Messages
    188
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Ingénieur Qualité (Microtechnique)
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2016
    Messages : 188
    Points : 265
    Points
    265
    Par défaut
    Je peux pas t'aider plus que ça.
    C'est à toi de comprendre tes erreurs!
    Avant de poser une question avez-vous testé l’enregistreur de macro ?
    http://fauconnier.developpez.com/tut...istreur-macro/
    Merci de passer vos discussion en
    Et sinon un est toujours le bienvenue.

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. [VBA] liste déroulante avec requête
    Par dalmasma dans le forum VBA Access
    Réponses: 17
    Dernier message: 16/07/2007, 15h52
  2. Comment remplir une liste déroulante avec une macro sans doublons
    Par alex.a dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 14/06/2007, 19h34
  3. liste déroulante avec une case à cocher et une image
    Par kurul1 dans le forum C++Builder
    Réponses: 4
    Dernier message: 08/03/2007, 10h54
  4. [Oracle] Remplir une liste déroulante avec une table
    Par CYCLOPE91440 dans le forum PHP & Base de données
    Réponses: 10
    Dernier message: 26/12/2006, 16h26
  5. [VBA-E]Erreur avec une combobox qui liste le contenu de cell
    Par Tartenpion dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 08/03/2006, 13h01

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