XL 2016 Bouton cliquable avec conditions ?

blazZzer

XLDnaute Nouveau
Bien le bonjour,

Je souhaiterais pouvoir créer un bouton cliquable (ça je sais) qui puissent pointer vers plusieurs pages selon une cellule.

Je m'explique :

J'ai une page configuration. Dans cette page, j'ai une liste déroulante qui permet de sélectionner 1 des 4 propositions. Une fois sélectionnée cette proposition ne bougera plus.

Chaque proposition correspond à une page du classeur. Admettons proposition 1, page 1, proposition 2, page 2 etc.

J'ai créé une page accueil (la 1ere) et il y a divers bouton cliquable qui pointe par exemple vers la page configuration via une macro.

Maintenant, je souhaiterais savoir si il est possible de créer un bouton unique qui pourra ouvrir la page 2 si la proposition 2 a été choisie dans la liste déroulante de la page configuration ? En gros, ce bouton pourrait ouvrir potentiellement une des 4 pages correspondantes aux propositions.

Merci par avance
 

Staple1600

XLDnaute Barbatruc
Bonjour le fil, blazZzer

Il est potentiellement probable que le fait de joindre un fichier exemple dans ta discussion renforce le sentiment que cette adjonction de PJ pourrait ne pas être inutile pour faciliter la résolution de ta question, non?

PS: J'aurais pu faire plus court, c'est vrai ;)
 

blazZzer

XLDnaute Nouveau
Bonjour le fil, blazZzer

Il est potentiellement probable que le fait de joindre un fichier exemple dans ta discussion renforce le sentiment que cette adjonction de PJ pourrait ne pas être inutile pour faciliter la résolution de ta question, non?

PS: J'aurais pu faire plus court, c'est vrai ;)
Bonjour
Un fichier est TOUJOURS le bienvenu...
Oui c'est faisable...
A+ François
Ouah, tu parles bien Staple1600....lol...

Bonjour,

effectivement, désolé... Je vous joins une copie complète.

Du coup, sur l'accueil en dessous du bouton de calcul rapide, je souhaiterais insérer un bouton "Listing".

Dans la page configuration, il y a, à la 1ere question la possibilité de choisir un type de boutique.

Je souhaiterais donc que le bouton de l'accueil ouvre la page correspondant au choix du type de boutique.

Voilà, j'espère avoir été clair,
merci
 

Pièces jointes

  • Boutique E.xlsm
    115.6 KB · Affichages: 7

Staple1600

XLDnaute Barbatruc
Re

A mettre dans le code de la feuille Config
VB:
Private Sub Worksheet_Change(ByVal Target As Range)
t = Array("Gratuite", "Boutique Basique", "Boutique A La Une", "Boutique Premium")
tt = Array("LISTING B Gratuite", "LISTING B Basique", "LISTING B à La Une", "LISTING B Premium")
If Target.Address = "$A$5" Then
feuille = CStr(Application.Index(tt, Application.Match(Target, t, 0)))
Worksheets(feuille).Activate
End If
End Sub
 

blazZzer

XLDnaute Nouveau
Re

A mettre dans le code de la feuille Config
VB:
Private Sub Worksheet_Change(ByVal Target As Range)
t = Array("Gratuite", "Boutique Basique", "Boutique A La Une", "Boutique Premium")
tt = Array("LISTING B Gratuite", "LISTING B Basique", "LISTING B à La Une", "LISTING B Premium")
If Target.Address = "$A$5" Then
feuille = CStr(Application.Index(tt, Application.Match(Target, t, 0)))
Worksheets(feuille).Activate
End If
End Sub

Merci de cette réponse mais elle ne correspond pas à ce que je souhaite (Mais c'est très intéressant). En effet, pour atteindre les pages il faudrait systématiquement repasser par la page config, ce que je ne souhaite pas.

Je souhaite que sur la page Menu (la première) il y est un bouton qui ouvre la page correspondante au choix de la page configuration.
 

Staple1600

XLDnaute Barbatruc
Re

Il suffisait d'adapter la macro précédente en conséquence ;)
VB:
Sub MacroChoix()
t = Array("Gratuite", "Boutique Basique", "Boutique A La Une", "Boutique Premium")
tt = Array("LISTING B Gratuite", "LISTING B Basique", "LISTING B à La Une", "LISTING B Premium")
X = Sheets("Config").[A5]
feuille = CStr(Application.Index(tt, Application.Match(X, t, 0)))
Worksheets(feuille).Activate
End Sub
Macro à affecter au bouton (à mettre dans un module standard)
(Supprimer la précédente de la feuille)
 

blazZzer

XLDnaute Nouveau
Re

Il suffisait d'adapter la macro précédente en conséquence ;)
VB:
Sub MacroChoix()
t = Array("Gratuite", "Boutique Basique", "Boutique A La Une", "Boutique Premium")
tt = Array("LISTING B Gratuite", "LISTING B Basique", "LISTING B à La Une", "LISTING B Premium")
X = Sheets("Config").[A5]
feuille = CStr(Application.Index(tt, Application.Match(X, t, 0)))
Worksheets(feuille).Activate
End Sub
Macro à affecter au bouton (à mettre dans un module standard)
(Supprimer la précédente de la feuille)
re,

merci beaucoup, c'est parfaitement ce que je souhaitais ! !

J'ai créé un bouton et j'y ai affecté la macro.

Encore une fois un grand merci.
 

blazZzer

XLDnaute Nouveau
Bonsoir
Ma solution...
A+ François

Bonsoir,

merci beaucoup, votre proposition est très intéressante !

Le fait d'avoir intégré un message est vraiment sympa.

Du coup, je suis indécis car votre proposition est très ludique, l'autre est plus direct...

Dans tous les cas, un grand merci à vous deux.

Vous avez parfaitement ciblé ma demande.

Autre question, si jamais j'ai à nouveau besoin d'aide sur ce classeur, il me faudra créer un nouveau message ou pourrais-je continuer ici ?
 

Discussions similaires

Réponses
0
Affichages
234