Code vba pour masquer feuilles suivant le nom

Résolu
Vinz -  
 Vinz -
Bonjour à tous,

Je cherche à créer une macro pour masquer des feuilles Excel si le nom de la feuille contient le mot 'add'. J'ai commencé à faire cette macro, mais je suis débutant et malheureusement elle ne passe pas....

Sub Masquer()

Application.ScreenUpdating = False

Dim i As Integer

For i = 1 To Worksheets.Count

Worksheet(i).Activate

If SheetName(i) = "*" & "add" & "*" Then

Sheet(i).Select
ActiveWindow.SelectedSheet.Visible = False

Next

End Sub


Pour exemple le nom des feuilles à masquer:
- "CC add1" ou "CC add2"
- "Master aad1" ou "Maqter add2"

Toutes les feuilles contenant "add" ne servent pas et doivent être masquer pour ne pas être exporter en pdf en fait.

En vous remerciant d'avance!!

A voir également:

2 réponses

eriiic Messages postés 24603 Date d'inscription   Statut Contributeur Dernière intervention   7 276
 
Bonjour,

Ou bien comme ça :
    Dim sh As Worksheet 
    For Each sh In Worksheets 
        sh.Visible = InStr(sh.Name, "add") = 0 
    Next sh 

Attention *Add* ne sera pas masqué, mettre lcase(sh.Name) si besoin

eric
3
Vinz
 
Cette version marche! je te remercie pour ton aide si rapide. La boucle était donc inutile...

Merci encore, à bientot
0
chossette9 Messages postés 4239 Date d'inscription   Statut Contributeur Dernière intervention   1 311
 
Bonjour,

as-tu essayé en enlevant les guillemets autour des * dans la ligne :
If SheetName(i) = "*" & "add" & "*" Then 
?

Cordialement.
0