Bouton pour renvoyer vers des feuilles en fonction d'une liste déroulante

  • Initiateur de la discussion Initiateur de la discussion Pompon
  • 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 !

Pompon

XLDnaute Nouveau
Bonjour tout le monde,

J'ai une liste déroulante (dans plusieurs cases fusionnées D16 à L16) avec plusieurs choix : 1 couche, 2 couches, 3 couches....

Je voudrais créer un bouton et lui associer une macro qui, en fonction du choix dans la liste déroulante me renvoie vers l'onglet qui lui est associé. J'ai déjà créer les onglets "1 couches", "2 couches"... La macro du bouton me permettrait alors de rediriger vers l'onglet.

Merci d'avance.

Note : je suis débutant ! 🙂
 
Re : Bouton pour renvoyer vers des feuilles en fonction d'une liste déroulante

Bonjour ,

Bienvenue sur Xld ,

Même en étant débutant si tu veux faire de l'Excel , il faut au moins un fichier afin que l'on ai le même contexte que le tiens,

Il sera Xls ou Xlsm à ton choix ..;
 
Re : Bouton pour renvoyer vers des feuilles en fonction d'une liste déroulante

Bon comme j'ai écris , je poste

@ Hello Joss
Petite variante sécurité et cas de 1 couche :
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Pluriel As String
'Si l'on ce trouve dans la colonne D
If Target.Column = 4 Then
  'Si D16 >1 on prévoit le rajout du s
  If Range("D16") > 1 Then Pluriel = "s"
 'Prise en main gestion d'erreur si feuille n'existe pas
  On Error Resume Next
  'Sélection de la feuille choisie
  Sheets(Range("D16") & " couche" & Pluriel).Select
 ' Si numéro d'erreur  alors affiche message
  If Err.Number > 0 Then MsgBox "La feuille " & Range("D16") & " couche" & Pluriel & " n'est pas dans ce classeur"
 'Redonne le controle erreur au système
  On Error GoTo 0
End If
End Sub
 
Re : Bouton pour renvoyer vers des feuilles en fonction d'une liste déroulante

Sheets(Range("D16") & " couches").Select

L'instruction dit à Excel : sélectionne (Select) la feuille (Sheets) qui s'appelle "le contenu de la cellule D16" c'est à dire 1,2,3 etc... + le mot "couches" précédé d'un espace -> pour appeler les feuilles telles que tu les as nommées.
J'espère que c'est un peu plus clair

Jocelyn
 
Re : Bouton pour renvoyer vers des feuilles en fonction d'une liste déroulante

Merci !

Oui c'est vrai que la première macro ne prend pas en compte le S de couche bien vu !

J'ai capté le deuxième programme sauf ; If Target.Column = 4 Then.

Pourquoi préciser cela alors que juste après tu parles de D16 ? donc en colonne 4 ?

Merci beaucoup en tout cas !
 
Re : Bouton pour renvoyer vers des feuilles en fonction d'une liste déroulante

Re ,'
La colonne 4 étant D , mais il faut aussi bridé par la ligne donc
il faudrait même écrire : if target.address="$D$16" then

comme cela si un changement à lieu dans un autre endroit de la feuille , la macro ne s'éxécute pas
 
- 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

Retour