[Catégorie modifiée VB6 -> VBA] Selectionner une feuille Excel avec une ComboBox

Signaler
Messages postés
2
Date d'inscription
vendredi 15 avril 2011
Statut
Membre
Dernière intervention
15 avril 2011
-
Messages postés
2
Date d'inscription
vendredi 15 avril 2011
Statut
Membre
Dernière intervention
15 avril 2011
-
Bonjour à tous,

En tant que débutante, je suis perdue.
J'aurais voulu savoir comment sélectionner une des feuilles de mon classeur Excel à l'aide dune ComboBox, afin que ce soit la seule feuille active pour la suite des commandes.

Voilà exactement ce que je voudrais faire: Dans mon classeur, j'ai plusieurs feuilles correspondant à un bâtiment. Pour chaque bâtiment, j'ai alors, pour chaque année, leurs consommations électriques, de chauffage ...

Je voudrais à l'aide d'une UserForm, sélectionner un bâtiment. Ensuite, sélectionner une année et afficher les informations relatives à ces choix précédents.

J'espère avoir été claire.

Merci d'avance pour vos réponses.

4 réponses

Messages postés
14008
Date d'inscription
samedi 29 décembre 2001
Statut
Modérateur
Dernière intervention
28 août 2015
74
Salut

Comme toujours, un projet doit être décomposé et il faut trouver des solutions à chaque étape :
- Remplir une ComboBox
- Énumérer la liste des feuilles du classeur, puis les insérer dans la ComboBox
- Faire une action lorsque la sélection de la ComboBox change
- Sélectionner une feuille

Que sais-tu faire / pas faire ?
Ces étapes sont simples et peuvent trouver leur réponse dans l'aide de Excel.
Revient nous voir si tu n'y arrives pas, en nous disant ce que tu as essayé.

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
Messages postés
7275
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
25 février 2021
120
Bonjour,

Voici un bel exemple à télécharger sur ce site:


http://www.vbfrance.com/codes/VBA-VB6-FORCER-OUVERTURE-COMBOBOX_52926.aspx

@+Le Pivert
Messages postés
672
Date d'inscription
mercredi 22 janvier 2003
Statut
Membre
Dernière intervention
2 juin 2016
1
Bonjour

Créer un UserForm1, une Listbox1
Une routine SelectSheet contenue dans l'USerform1 qui permettra quand on l'appelle de choisir la feuille

Public MaFeuilleSelectionnee as String
Sub SelectSheet()
Dim i as Integer
Dim ws As Worksheet
Dim wbook As Workbook
set wbook = ActiveWorkbook
' Remplir la listbox1 avec les noms de feuille
UserForm1.ListBox1.Clear
For Each ws In wbook.Worksheets
If ws.Name <> "" Then UserForm1.ListBox1.AddItem ws.Name
Next ws

UserForm1.Show
Sheets(MaFeuilleSelectionnee).Activate
End Sub

dans la userform un bouton OK de nom COmmandButton1
contiendra

Private Sub CommandButton1_Click()
MaFeuilleSelectionnee = ListBox1.Text
Unload Me
End Sub
Messages postés
2
Date d'inscription
vendredi 15 avril 2011
Statut
Membre
Dernière intervention
15 avril 2011

Merci à vous pour le temps que vous m'accordez.

Je ne pensais pas avoir des réponses aussi vite, j'ai donc cherché un peu de mon côté.

Pour le moment, je n'ai réussi qu'à récupérer les noms de mes feuilles. Enfin je pense. N'hésitez pas à vous moquer si je me suis trompée.

Private Sub ComboBox1_DropButtonClick()
For i = 1 To Sheets.Count
ComboBox1.AddItem Sheets(i).Name
Next i
End Sub

Je cherche, à présent, à comprendre comment rendre la feuille selectionnée seule feuille active, pour pouvoir alors sélectionner certaines données.

Pour le moment, je lis pas mal de "cours" de VBA et je teste en même temps, mais pour le moment, j'avance vraiment à tâton afin de comprendre la logique.

Je viendrai vous embêter de nouveau, si vraiment je suis complètement perdue.

Encore merci de faire partager vos connaissances.