[Catégorie modifiée VB6 -> VBA] Selectionner une feuille Excel avec une ComboBox
cs_FlashyPanda
Messages postés2Date d'inscriptionvendredi 15 avril 2011StatutMembreDernière intervention15 avril 2011
-
15 avril 2011 à 11:27
cs_FlashyPanda
Messages postés2Date d'inscriptionvendredi 15 avril 2011StatutMembreDernière intervention15 avril 2011
-
15 avril 2011 à 15:56
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.
A voir également:
[Catégorie modifiée VB6 -> VBA] Selectionner une feuille Excel avec une ComboBox
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 15 avril 2011 à 11:54
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)
cs_loulou69
Messages postés672Date d'inscriptionmercredi 22 janvier 2003StatutMembreDernière intervention 2 juin 20161 15 avril 2011 à 12:02
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
cs_FlashyPanda
Messages postés2Date d'inscriptionvendredi 15 avril 2011StatutMembreDernière intervention15 avril 2011 15 avril 2011 à 15:56
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.