Bonjour à toutes et à tous,
J'ai le code ci-dessous qui me permet dans un ComboBox à l'intérieur d'un formulaire d'afficher le nom des feuilles de mon classeur commençant par "L".
Les onglets de mes feuilles contiennent des noms tels que L24, L12035, L343.
Elles ne sont pas classées par numéro mais par couleur (bleues pour fonctionnement, jaunes pour l'investissement).
Est-il possible de classer ces feuilles dans le Combo de manière à avoir les nombres du plus petit au plus grand ?
Merci par avance pour votre aide.
J'ai bien pensé à faire quelque chose comme ça et mettre le code dans ThisWorkbook, mais mon soucis est que les feuilles commencent par "L".
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 Private Sub UserForm_Initialize() Dim nbrfeuille As Long, I As Long Application.ScreenUpdating = False 'je remplis ma combo avec le nom des feuilles nbrfeuille = ActiveWorkbook.Worksheets.Count For I = 1 To nbrfeuille If Left(Sheets(I).Name, 1) = "L" Then 'test de la premier lettre du nom de la feuille Me.CmbLigne.AddItem (ActiveWorkbook.Sheets(I).Name) End If Next I End Sub
Qu'en pensez-vous ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 Sub TriOngletsParNom() Dim I As Integer, J As Integer For I = 1 To Sheets.Count For J = 1 To I - 1 If UCase(Sheets(I).Name) < UCase(Sheets(J).Name) Then Sheets(I).Move Before:=Sheets(J) Exit For End If Next J Next I End Sub
Partager