Bonjour,
Je voudrais ordonner les onglets de mon fichier selon un ordre que j'ai bien défini. Mais en fait dans mon classeur il ya des onglets masqués ce qui empêche mon code de classer les feuilles comme je le veux. Je voudrais ordonner mes feuilles sans tenir compte de ces feuilles masqués ou bien démasquer les feuilles, les mettre à la fin et en fin les masquer pour permettre que les feuilles qui ne sont pas masquées soient ordonnées comme je le veux; Voici le code que j'ai
Merci d'avance.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
'liste contient les noms des feuilles
'liste est organisée avec en colonne A les NUM des feuilles et en colonne B le nom des feuilles
'Le nom de la feuille liste figure dans le tableau en Premier ou dernier
 
 
Public Sub test()
Dim ws As Worksheet: Set ws = Application.Sheets("liste")
COMBIEN_DE_FEUIL = (ws.Range("A" & Rows.Count).End(xlUp).Row) - 1  'du fait de l'en tête de colonne
Set ws = Nothing
Dim Max As Integer: Max = COMBIEN_DE_FEUIL
Dim i As Integer
Dim wsList As Worksheet: Set wsList = Application.Sheets("liste")
 
    For Each ws In Worksheets
        For i = 2 To Max + 1 'pour parcourir la liste on démarre en ligne 2 et l'on doit rajouter 1 à Max !
            If ws.Name = wsList.Cells(i, 2).Value Then
                ws.Move Before:=Sheets(i - 1) 'Neutralisation de la décision de démarrer i à 2 dans le cas des feuilles
            End If
        Next i
    Next ws
 
Set ws = Nothing
Set wsList = Nothing
 
End Sub