macro sur liste déroulante

  • Initiateur de la discussion Initiateur de la discussion kinel
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

kinel

XLDnaute Occasionnel
re bonjour
cette fois c'est la dernière question, le projet se termine !

sur une feuille contenant un tableau je place une liste déroulante qui comporte 4 lignes, je voudrai qu'en choisissant une ligne on actionne une macro (ici ce sera un tri de données)

merci de vos reponses

Kinel
 
Re : macro sur liste déroulante

Re Kinel

regarde le code ci-dessous :

A placer dans le module de la feuille où se trouve le combo
Code:
Option Explicit
Private Sub ComboBox1_Change()
If ComboBox1.Value = "nommacro1" Then
    nommacro1
    ElseIf ComboBox1.Value = "nommacro2" Then nommacro2
    ElseIf ComboBox1.Value = "nommacro3" Then nommacro3
    ElseIf ComboBox1.Value = "nommacro4" Then nommacro4
End If
End Sub

suppose que ton combo soit alimenté du nom de tes macros, si ce n'est pas le cas tu peux adapter en associant la valeur du combo au nom de la macro concernée dans l'instruction "if".

bon après midi
@+
 
Re : macro sur liste déroulante

Re

c'est pas un controle de la barre d'outils "boite à outils controles" mais un de la barre d'outils "formulaire", donc forcement cela ne peut pas fonctionner, d'autre part attention dans le code aux valueurs présentes dans la combobox et aux noms de tes macros, à noter qu'il est à éviter d'utiliser des accents dans le nom des procédures et dans les variables...

Code:
Private Sub ComboBox1_Change()
If ComboBox1.Value = "[COLOR="Red"]Plein écran[/COLOR]" Then
    Pleinécran 's'il y a un espace le reprendre dans le code et les noms de procédure sans parenthèses à la fin...
    ElseIf ComboBox1.Value = "nommacro2" Then nommacro2
    ElseIf ComboBox1.Value = "nommacro3" Then nommacro3
    ElseIf ComboBox1.Value = "nommacro4" Then nommacro4
End If
End Sub

@+
 
Re : macro sur liste déroulante

c'est terrible ce truc

pas moyen
j'ai copié/coller tes éléments en les adaptant aux références de mon classeur
et ça ne fonctionne pas

j'ai vu que tu avais une Feuil1(Feuil1)

dans le code prends tu le premier ou le second "feuil1" comme référence ?

Merci de ta réponse

Kinel
 
Re : macro sur liste déroulante

Re

dans ce code :

Code:
Feuil1.ComboBox1.List = Feuil1.Range("A1:A4").Value

"Feuil1" est le "codename" de la feuille (le premier dans l'explorateur de projet, mais tu peux utiliser le nom de la feuille :

Code:
Sheets("NomdetaFeuille").ComboBox1.List = Sheets("NomdetaFeuille").Range("A1:A4").Value

@+
 
Re : macro sur liste déroulante

j'avais essayé mais sans succés

dans Thisworbook j'ai mis :

Option Explicit
Private Sub Workbook_Open()
Sheets("Liste").ComboBox1.List = Sheets("Liste").Range("X1:X4").Value
End Sub

Dans le code de ma feuille j'ai mis🙁j'ai aussi placé les quatres cellules X1:X4 )

Option Explicit
Private Sub ComboBox1_Change()
If ComboBox1.Value = "nommacro1" Then
nommacro1
ElseIf ComboBox1.Value = "nommacro2" Then nommacro2
ElseIf ComboBox1.Value = "nommacro3" Then nommacro3
ElseIf ComboBox1.Value = "nommacro4" Then nommacro4
End If
End Sub

j'ai aussi placé le module contenant les 4 macros

et ça ne fonctionne toujours pas

le marteau est prêt !🙁
 
Re : macro sur liste déroulante

Re

aarf... tu as bien respecté le nom des procédures ? Je vois dans ton code que tu n'as pas modifié le nom "nommacro1" et les autres... Sinon mets le fichier en pièce jointe..; parce que là, en l'état vois pas trop.... dans le classeur que j'ai posté, cela fonctionne chez toi ?
 
Re : macro sur liste déroulante

oui dans ton classeur ça fonctionne mais quand je mets tout ça dans le mien rien ne va plus

pour poster ça devient un peu trop gros

je vais encore essayer d'autres trucs

sinon je dépose ça sur mon site et je mets un lien

merci de ton aide

Kinel
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
43
Affichages
3 K
Retour