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 :

Liste déroulante dans un combobox


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé
    Inscrit en
    Avril 2007
    Messages
    1 247
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 1 247
    Par défaut Liste déroulante dans un combobox
    Bonjour
    J'ai un problème que je ne parviens pas à résoudre dans l'élaboration de mon code vba pour un combobox
    J'ai créer une liste déroulante dans un Combobox .
    Dans cette liste déroulante, lorsque je sélectionne les premières lettres d'un nom, celui s'affiche dans mon Combobox mais je ne peux pas ensuite le sélectionner pour qu'il puisse s'incrémenter dans la cellule Excel de mon fichier.
    Je dois chercher ce nom dans ma liste déroulante et là je peux ensuite le sélectionner pour qu'il puisse s'incrémenter sur ma feuille Excel.
    Merci de votre aide

    Voici le vode vba

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Private Sub ComboBox1_Click()
     
    'Copier la valeur du nom selection dans la liste deroulante et la copier sur la premiere cellule vide de la colonne J
    Dim maLigne As Long
    With Worksheets("DONNEE")
    maLigne = .Range("J" & Rows.Count).End(xlUp).Row + 1 ' en partant du basde la colonne J,se positionne sur la derniere cellule non vide+1 de la colonne J
        .Range("J" & maLigne).value = ComboBox1.value
     
    End With
    End Sub

  2. #2
    Membre émérite
    Avatar de eric4459
    Homme Profil pro
    Ingénieur Gestion de Projets
    Inscrit en
    Avril 2014
    Messages
    605
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes de Haute Provence (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur Gestion de Projets
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2014
    Messages : 605
    Par défaut
    Bonjour,
    Si j'ai bien compris, tu saisis dans ta ComboBox les premières lettres d'un mot et celui ci s'affiche mais ne génère aucune action.
    En fait c'est parce que, selon moi, tu n'as qu'un seul mot dans ta liste, qui en contient 20 par exemple, qui commence par les lettres saisies
    Si dans ta liste tu as:
    Voiture
    Camion
    Bicyclette
    Avion
    et que tu saisis "Avi", ton ComboxBox va afficher "Avion" mais rien ne se passe parce que tu ne cliques pas dessus
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Private Sub ComboBox1_Click()
    Je vois trois solutions pour parer à cela:
    • Tapes moins de lettres ou utilises le déroulement de ton ComboBox puis CLIQUES sur le mot choisi


    • Dans les propriétés de ta macro dans "Comportement" (je suppose parce ce ma version anglaise donne "Behavior") mets la valeurs "AutoWordSelect" à "False"

    Eric
    "Vous n’avez cessé d’essayer ? Vous n’avez cessé d’échouer ? Aucune importance !
    Réessayez, échouez encore, échouez mieux." Samuel Beckett
    Pensez aux balises et
    Visitez les FAQ Excel et allez faire un tour ici
    Tutoriels de SilkyRoad

  3. #3
    Expert confirmé
    Homme Profil pro
    aucune
    Inscrit en
    Avril 2016
    Messages
    7 563
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 84
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Avril 2016
    Messages : 7 563
    Par défaut
    Bonjour
    Il est toujours très sain et infaillible de se référer non au contenu de la partie éditable d'une combobox, mais réellement à l'article qui y est sélectionné :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    combobox1.list(combobox1.listindex)
    Et (bien entendu) uniquement si un article y a bien été sélectionné (vérifier donc que combobox1.listindex n'est pas = -1)

  4. #4
    Membre éprouvé
    Inscrit en
    Avril 2007
    Messages
    1 247
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 1 247
    Par défaut
    Bonjour
    Eric, c'est tout à fait cela..
    Effectivement, comme tu l'as proposé, j'ai opté pour la solution la plus simple
    Tapes moins de lettres ou utilises le déroulement de ton ComboBox puis CLIQUES sur le mot choisi
    unparia,
    ta ligne de code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    combobox1.list(combobox1.listindex)
    m'affiche rien.
    j'ai pas du l'inserer correctement dans mon code vba

Discussions similaires

  1. Réponses: 5
    Dernier message: 01/06/2006, 16h18
  2. [VB6]Créer une liste déroulante dans une dataGrid
    Par mcay dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 11/05/2006, 09h32
  3. liste déroulante dans formulaire continu
    Par remi59 dans le forum Access
    Réponses: 7
    Dernier message: 31/03/2006, 09h40
  4. Pb de liste déroulante dans un formulaire
    Par darkian dans le forum Access
    Réponses: 2
    Dernier message: 27/12/2005, 13h22
  5. [EXCEL] Insertion liste déroulante dans une cellule
    Par the java lover dans le forum Macros et VBA Excel
    Réponses: 9
    Dernier message: 02/11/2005, 18h30

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