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 :

Utilisation de Combobox + Rowsource [Débutant(e)] [XL-2007]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Dessinateur industriel
    Inscrit en
    Mai 2011
    Messages
    35
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Dessinateur industriel
    Secteur : Bâtiment

    Informations forums :
    Inscription : Mai 2011
    Messages : 35
    Par défaut Utilisation de Combobox + Rowsource
    Bonjour à tous,

    j'ai actuellement un soucis avec l'utilisation de plusieurs combobox liée entre elle.
    Je m'explique

    J'ai fais clic droit sur la premiere "Visualiser code" et la j'entre en Private sub.

    Je rentre donc mon code qui est

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Private Sub ComboBox2_Change()
    If Range("B43").Value = "W44" And Range("B49").Value = "Serreur" Then
        ComboBox3.RowSource = "C55:C69"
     
     End If
     End Sub
    En gros je veux qu'en fonction des valeures présente en "B43" et "B44" la plage de recherche de la combobox 3 change.

    Cela est il possible ?


    Merci pour votre aide,
    Cordialement
    Defter

  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,

    Si, comme tu sembles l'indiquer, ta combobox est sur une feuille, la propriété à utiliser est "ListFillRange", et non pas "RowSource" qui est utilisée avec les combobox sur userform.

  3. #3
    Membre averti
    Homme Profil pro
    Dessinateur industriel
    Inscrit en
    Mai 2011
    Messages
    35
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Dessinateur industriel
    Secteur : Bâtiment

    Informations forums :
    Inscription : Mai 2011
    Messages : 35
    Par défaut
    Bonjour Daniel.C

    J'ai utilisé ta technique, et cette fois-ci il me demande une maccro, seulement il n'y en a pas comme je cherche à la créer justement.

    Est-ce lié au faite que je sois dans "Private Sub" ?
    J'ai aussi actualisé le "_Change" en "_QuandClic" car je souhaite que la Combobox3 s'actualise lors du choix de la 2. Est ce un problème aussi ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Private Sub ComboBox2_quandclic()
    If Range("B43").Value = "W44" And Range("B49").Value = "Serreur" Then
        Me.ComboBox3.ListFillRange = "C55:C69"
     
     End If
     End Sub
    Désolé c'est peut être des questions stupides mais je débute dans l'utilisation de combobox.


    Cordialement,
    Defter

    J'arrive maintenant à obtenir des valeures dans la combobox3, je n'avais pas précisé vers quel feuille aller chercher les prérequis et les données ...

    Le code à maintenant cette forme

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Private Sub ComboBox3_Clic()
        If Sheets("Data").Range("B43").Value = "W44" AndSheets("Data").Range("B49").Value = "Serreur" Then
            ComboBox3.ListFillRange = "Data!C55:C69"
     
        End If
    End Sub
    Existe t-il un moyen de clean une combobox ? C'est à dire qu'elle n'affiche rien comme si aucun prérequis n'avait été selectionné ?

  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
    Tu utilises certainement les contrôles de formulaire. Tu devrais utiliser plutôt les contrôles ActiveX qui offrent davantage de fonctionnalité :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ActiveSheet.ComboBox3.ListIndex = -1

  5. #5
    Membre averti
    Homme Profil pro
    Dessinateur industriel
    Inscrit en
    Mai 2011
    Messages
    35
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Dessinateur industriel
    Secteur : Bâtiment

    Informations forums :
    Inscription : Mai 2011
    Messages : 35
    Par défaut
    Non je suis bien en ActiveX,

    J'ai maintenant les données que je souhaite dans ma combobox,
    Je cherche maintenant à influencer les valeures présentes dans celle-ci avec des paramètres présents dans d'autre cellules.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Private Sub ComboBox2_quandclic()
        If Sheets("Data").Range("B43").Value = "W44" And Sheets("Data").Range("B49").Value = "Serreur" Then
            ComboBox3.ListFillRange = "Poteau_Serreur"
            ComboBox3.ListRows = 6
     
        End If
        If Sheets("Data").Range("B43").Value = "W80" And Sheets("Data").Range("B49").Value = "VEC" Then
            ComboBox3.ListFillRange = "Poteau_VEC"
            ComboBox3.ListRows = 2
        End If
     
    End Sub
    Il me detecte bien la première condition c'est à dire "Poteau_serreur" mais lorsque je change les valeurs, il n'actualise pas au profit des valeurs de "Poteau_Vec".

    Je pense que c'est une erreur de synthaxe au niveau des deux conditions "SI" mais la j'avoue être completement bloqué.

    Merci pour tes conseils en tout cas.

  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
    Tu ne peux pas écrire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ComboBox3.ListFillRange = "Poteau_Serreur"
    Tu dois coder soit une plage de cellules (par exemple A1:A10) ou une plage nommée sans guillemets dans ListFillRange.

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

Discussions similaires

  1. [C#] Utilisation de ComboBox
    Par Troopers dans le forum Windows Forms
    Réponses: 4
    Dernier message: 04/11/2009, 13h07
  2. utilisation de combobox
    Par fredppp dans le forum VC++ .NET
    Réponses: 1
    Dernier message: 04/04/2007, 07h55
  3. Questions concernant l'utilisation des ComboBox
    Par philguio dans le forum Windows Forms
    Réponses: 2
    Dernier message: 09/01/2007, 11h26
  4. Utilisation de combobox et d'une animation flash
    Par naima2005 dans le forum AWT/Swing
    Réponses: 3
    Dernier message: 04/06/2006, 20h09
  5. [VBA-E]ComboBox + RowSource ne concerne que les lignes ?
    Par ouskel'n'or dans le forum Macros et VBA Excel
    Réponses: 11
    Dernier message: 10/04/2006, 14h29

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