Excel Bande déroulante pour sélect feuill

Fermé
jobine - 10 avril 2008 à 19:04
Polux31 Messages postés 6917 Date d'inscription mardi 25 septembre 2007 Statut Membre Dernière intervention 1 novembre 2016 - 17 avril 2008 à 22:38
Bonjour,

Je ne connais pas grand chose au VBA mais je voudrais insérer une bande déroulante contenant le nom des feuilles de mon classeur (environ une cinquantaine) et insérer une macro qui me permettrait d'ouvrir la feuille sélectionnée.


En vous remerciant de votre précieuse aide,

Jobine
A voir également:

4 réponses

Polux31 Messages postés 6917 Date d'inscription mardi 25 septembre 2007 Statut Membre Dernière intervention 1 novembre 2016 1 204
10 avril 2008 à 19:30
Bonjour,
Il faut aller dans l'éditeur VB (alt+F11). Ensuite il faut insérer un module. On suppose que ta liste déroulante (ComboBox) porte le nom de ComboBox1 et qu'il se trouve sur la première feuille. Ici j'ai gardé le nom du premier onglet (feuil1), remplace le par le nom de ton onglet.
Dans le module fait copier/coller de ça :
Option Explicit

Public Sub initCombo()
Dim ws As Worksheet
Dim i As Long
    
    Feuil1.ComboBox1.Clear
    Set ws = Worksheets(1)
    For i = 1 To Sheets.Count
        Feuil1.ComboBox1.AddItem Sheets(i).Name
    Next i
    
End Sub

Toujours dans l'éditeur VB, double clique sur "Feuil1" et fait un copier/coller de ça sur la droite:
Private Sub ComboBox1_Click()
    Worksheets(Me.ComboBox1.Text).Activate
End Sub

Pour remplir la liste à l'ouverture du fichier Excel, faire un double clique sur ThisWorbook (toujours dans l'éditeur VB) et faire un copier/coller de ça :
Private Sub Workbook_Open()
    Module1.initCombo
End Sub

Sauvegarde ton fichier, ferme le et ouvre le de nouveau.
Si tu as un message concernant l'activation de la macro au démarrage, faire accepter.
Puis aller dans le menu Outils -> Macros -> sécurités et choisir l'option du bas (Basse)... valider et voilà ...

;o)

polux
0
Merci Pollux pour tes infos.

Maintenant, sans vouloir abuser, pourrais-tu me dire comment affecter le nom combobox1 à ma liste déroulante?

Encore merci d'avance!

Jobine
0
Polux31 Messages postés 6917 Date d'inscription mardi 25 septembre 2007 Statut Membre Dernière intervention 1 novembre 2016 1 204
11 avril 2008 à 08:01
Bonjour,

Il y a 2 outils qui permettent d'afficher des valeurs dans des "bandes déroulantes" : le ComboBox et la ListBox. Dans mon exemple j'ai pris, arbitrairement, un ComboBox mais tu peux utiliser une ListBox. Il suffit de remplacer dans le code ComboBox1 par ListBox1. Mais dans ton cas le ComboBox est plus approprié.
Pour affecter une propriété à un outils, il faut passer en mode création (l'icône avec l'équerre). Faire clique droit sur le contrôle posé sur la feuille et sur propriétés. Une fenêtre s'ouvre avec les propriétés.

Si tu as d'autres questions n'hésites pas à revenir ici.

;o)

Polux
0
Désolé pour le délais de réponse.

Merci beaucoup Polux!

c'est très apprécié!
jobine
0
Polux31 Messages postés 6917 Date d'inscription mardi 25 septembre 2007 Statut Membre Dernière intervention 1 novembre 2016 1 204
17 avril 2008 à 22:38
de rine, content de t'avoir aidé

bon courage pour la suite

;o)

polux
0
eriiic Messages postés 24603 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 15 décembre 2024 7 256
17 avril 2008 à 22:02
Bonsoir,

si c'est juste pour sélectionner une feuille tu as le truc indiqué par je ne sais plus qui (désolé pour lui ou elle) qui consiste à faire un clic droit sur les petites icones en bas à gauche qui permettent de faire défiler les onglets.
Une liste des feuilles apparait

eric
0