Exclure certaines feuilles

Bonjour à tous,

J'ai une macro qui me permet de masquer les lignes vides. Elle fonctionne, cependant elle s'applique à l'intégralité du classeur. A présent je souhaiterai exclure deux feuilles "MAINTENANCE" et "PLANIFICATION". J'ai effectué des recherches mais mes essais ne sont pas concluants. Pourriez-vous me corriger la macro ?

Voilà ma macro :

Sub Mise_a_jour_liste()
For Each F In ThisWorkbook.Sheets
F.Activate
Application.ScreenUpdating = False
Rows("4:100").Select
Selection.EntireRow.Hidden = False
Dim Cel As Range
For Each Cel In Range("C4:C100")
If Cel.Value = "" Then
Cel.EntireRow.Hidden = True
End If
Next
Next
Range("C3").Select
End Sub

Je vous remercie par avance pour votre aide, à bientôt.

Diane

Bonjour Diane,

Voici un code pour exclure certaine feuille à adapter évidemment

If F.Name <> "Capa J" And F.Name <> "Capa Sbrut"  Then
'Ta macro
end if

Remplace Capa J et Capa Sbrut par le nom des feuilles que tu veux exclure

Cordialement

Merci pour cette réponse rapide. J'ai essayé d'intégrer cette modification mais cela ne fonctionne pas. Je dois probablement la mettre au mauvais endroit. Serait-il possible de me l'inclure dans la macro svp ?

Merci

Bonjour,

Sans Select... et en qualifiant, c'est certainement mieux ! En déclarant ses variables en début aussi !

Sub Mise_a_jour_liste()
    Dim F As Worksheet, Cel As Range
    Application.ScreenUpdating = False
    For Each F In ThisWorkbook.Worksheets
        Select Case F.Name
            Case "xxx", "yyy", "zzz"
            Case Else
                F.Rows("4:100").Hidden = False
                For Each Cel In F.Range("C4:C100")
                    Cel.EntireRow.Hidden = (Cel.Value = "")
                Next Cel
        End Select
    Next F
End Sub

Et en indentant le code, on le lit mieux !

Voici le code en intégrant ma macro :

Sub Mise_a_jour_liste()
For Each F In ThisWorkbook.Sheets
If F.Name <> "Capa J" And F.Name <> "Capa Sbrut"  Then
F.Activate
Application.ScreenUpdating = False
Rows("4:100").Select
Selection.EntireRow.Hidden = False
Dim Cel As Range
For Each Cel In Range("C4:C100")
If Cel.Value = "" Then
Cel.EntireRow.Hidden = True
End If
Next
Next
Range("C3").Select
end if
End Sub

Super, merci à tous les deux pour votre réactivité ! La macro fonctionne parfaitement.

Bonne journée

Rechercher des sujets similaires à "exclure certaines feuilles"