• Initiateur de la discussion Initiateur de la discussion CyK
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

C

CyK

Guest
Est ce que quelqu'un peut m'expliquer cela

Dans un classeur je teste l'existence de certaines feuilles et je les efface j'ai d'abord essayé ceci :

Code:
    Dim Ws As Worksheet
    Application.DisplayAlerts = False
    For Each Ws In ActiveWorkbook.Sheets
    If Ws.Name = 'Expés 10 Jours Ouvrés'  Then
    Ws.Delete
    End If
    If Ws.Name = 'Stocks sur Expés' Then
    Ws.Delete
    End If
    If Ws.Name = 'Ruptures Expés' Then
    Ws.Delete
    End If
    Next
    Application.DisplayAlerts = True

Qui me retourne une belle erreur d'execution dont le code est incompréhensible si par contre je fais ceci :
Code:
    Dim Ws As Worksheet
    Application.DisplayAlerts = False
    For Each Ws In ActiveWorkbook.Sheets
    If Ws.Name = 'Expés 10 Jours Ouvrés' Or Ws.Name = 'Stocks sur Expés' Or Ws.Name = 'Ruptures Expés' Then
    Ws.Delete
    End If
    Next
    Application.DisplayAlerts = True

Tout fonctionne nickel !!!

Une idée sur l'explication de cette Erreur ?
 
Bonjour

Cela parait normal car si ta première ou ta deuxième condition est remplie il supprime ta feuille. Donc ta feuille n'existant plus il n'y a plus de ws.name d'où un bug lorsque tu arrive à la condition suivante If ws.name

Par contre dans ta 2ème macro il n'y a pas de problème tu fais le test qu'une fois

Si tu veux mettre des if à la suite il faut passer par des elseif

Code:
 For Each Ws In ActiveWorkbook.Sheets

    If Ws.Name = 'Expés 10 Jours Ouvrés'  Then

    Ws.Delete



   ElseIf Ws.Name = 'Stocks sur Expés' Then

    Ws.Delete



    ElseIf Ws.Name = 'Ruptures Expés' Then

    Ws.Delete

    End If

    Next

Bon courage
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
5
Affichages
573
  • Question Question
Microsoft 365 Excel VBA
Réponses
5
Affichages
575
Réponses
10
Affichages
517
Réponses
10
Affichages
661
Retour