Supprimer feuille Excel en fonction du nom

Bonjour le forum ! Voilà, j'ai un classeur excel qui fait l'analyse de certaines machines. Si on fait l'analyse d'une machine alors qu'elle a déjà été faite, la feuille nommée "Analyse [num machine]" se renommera "Analyse - Old - [num machine]".

Le problème, c'est que a force d'analyses, ça commence a faire beaucoup de feuille "- Old - " et tout supprimer a la main est très laborieux. C'est pour cette raison que je voulais faire une fonction qui supprime la feuille si dans son nom on retrouve le terme "Old"

J'ai fait ceci, mais ça ne fonctionne pas ( ça fait absolument rien enfaite). Une idée ?

Sub supprimerOld()
    For i = 1 To ActiveWorkbook.Worksheets.Count
        If InStr("old", ActiveWorkbook.Worksheets(i).Name) <> 0 And InStr("Old", ActiveWorkbook.Worksheets(i).Name) <> 0 Then
            'On Error Resume Next
                ActiveWorkbook.Worksheets(i).Delete
            'On Error GoTo 0
        End If
    Next i
End Sub

Bonjour,

Sub suppOld()
    Dim sh As Worksheet
    Application.DisplayAlerts = False
    For Each sh In Worksheets
        If InStr(LCase(sh.Name), "old") > 0 Then sh.Delete
    Next sh
    Application.DisplayAlerts = True
End Sub

eric

Bonjour,

petite inversion dans le "instr"

If InStr(ActiveWorkbook.Worksheets(i).Name, "old") <> 0 Then

P.

edit Hello Eriic

Merci beaucoup Eric et Patrick, ça marche niquel

Rechercher des sujets similaires à "supprimer feuille fonction nom"