Liste des onglets dans une feuille calcul Excel

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 !

rlebigre

XLDnaute Nouveau
Bonjour à tous,

J'ai un fichier Excel comportant un certain nombre d'onglet. Lorsque je créer des onglets 'manuellement', je suis obligé de mettre à jour la liste des onglets dans un des onglets du fichier Excel. En fait cette liste me sert dans un Combobox afin de sélectionner un onglet et d'ajouter des infos dedans.

En fait je voudrais que la liste se mette à jour à chaque ouverture du classeur.

Autres point que je n'arrive pas à résoudre.
Je voudrais que la liste se créer sans prendre en compte 2 onglets ayant des noms bien distincts ('Accueil' et 'tab')

Merci de l'aide que vous pourriez m'apporter.

Cordialement.
 
Bonjour,

Envoie ton fichier en pièces jointes (format zip).

Avant tout développement, sais-tu qu'un clic droit sur les 4 flèches qui permettent de naviguer entre tous les onglets (en bas à gauche de l'écran) fait apparaitre la liste des feuilles et te permet d'en choisir une facilement.

JLOr
 
bonjour rlebigre, jlor (on se croirait dans une film de SF avec vos speudos 🙂 )

Une proposition, sans passer par une feuille, directement dans l'userfom :

Private Sub ComboBox1_Click()
Sheets(ComboBox1.Text).Select
Unload UserForm1
End Sub

Private Sub userform_initialize()
Dim ws As Worksheet

For Each ws In Worksheets
   
If ws.Name <> 'Tab' And ws.Name <> 'Accueil' Then
&nbsp; &nbsp; &nbsp; &nbsp; ComboBox1.AddItem ws.Name
&nbsp; &nbsp;
End If
Next ws

&nbsp; &nbsp; &nbsp; &nbsp;
End Sub


salut
 
re

Je suppose que c'est les items de la combobox que tu veux classer, pas les feuilles du classeur.

Private Sub userform_initialize()
Dim ws As Worksheet
Dim i As Byte, j As Byte
Dim temp As String

For Each ws In Worksheets
&nbsp; &nbsp;
If ws.Name <> 'Tab' And ws.Name <> 'Accueil' Then
&nbsp; &nbsp; &nbsp; &nbsp; ComboBox1.AddItem ws.Name
&nbsp; &nbsp;
End If
Next ws

For i = 0 To ComboBox1.ListCount
&nbsp; &nbsp;
For j = i + 1 To ComboBox1.ListCount - 1
&nbsp; &nbsp; &nbsp; &nbsp;
If ComboBox1.List(i) > ComboBox1.List(j) Then
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; temp = ComboBox1.List(i)
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; ComboBox1.List(i) = ComboBox1.List(j)
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; ComboBox1.List(j) = temp
&nbsp; &nbsp; &nbsp; &nbsp;
End If
&nbsp; &nbsp;
Next j
Next i
&nbsp; &nbsp; &nbsp; &nbsp;
End Sub

salut
 
- 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

Réponses
3
Affichages
267
Retour