Message erreur 13 alors que la macro fonctionne

  • Initiateur de la discussion Initiateur de la discussion Bruno3838
  • 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 !

B

Bruno3838

Guest
Bonjour à tous,

Je viens de créer une macro pour supprimer toutes les feuilles non nécessaires en fonction de ma Val1:


Sub supfeuille()

Dim Val1 As Integer
Val1 = Sheets("Packing list").[t16].Value
Application.DisplayAlerts = False
For I = Sheets.Count To 1 Step -1
If Sheets(I).Name <= Val1 Then
Else
Sheets(I).Delete
End If
Next

End Sub

Elle supprimer toutes les feuilles que je souhaite mais à la fin j'ai le message suivant :

Microsoft Virtual Basic

Erreur d'exécution '13':

Type incompatible

Avec le choix de cliquer sur Fin, Annuler

Merci pour votre aide
 
Re : Message erreur 13 alors que la macro fonctionne

Bonjour Jean-Marcel,

Merci pour ton aide.

Voici le fichier.

Quand je rentre le nombre de caisse (cellule en jaune) mon tableau s'ajuste à la bonne longueur.

Je prends l'exemple de 3 caisses.

Mes feuilles 1 à 3 vont reprendre individuellement les données de la feuille packing list pour leur numéro de caisse respective.

Je souhaite donc supprimer les feuilles 4 et 5 en cliquant sur le bouton supprimer les feuilles.

La macro me supprime bien les feuilles mais fini par le message d'erreur.

Le fichier normal comprend 90 feuilles d'où l'intérêt d'automatiser la suppression.

Merci pour votre aide
 
Dernière modification par un modérateur:
Re : Message erreur 13 alors que la macro fonctionne

Re,

ceci fonctionne chez moi :
Code:
Sub supfeuille()
Dim Val1 As Integer
    Val1 = Sheets("Packing list").[t16].Value
Application.DisplayAlerts = False
For I = Sheets.Count To 1 Step -1
If Sheets(I).Name > Val1 Then Sheets(I).Delete
Next
Application.DisplayAlerts = True
End Sub
 
Re : Message erreur 13 alors que la macro fonctionne

Merci pour la piste.

Je viens de faire ce code :

Sub supfeuille()

Dim Val1 As Integer
Val1 = Sheets("Packing list").[t16].Value
Application.DisplayAlerts = False
For I = Sheets.Count To 1 Step -1
If Sheets(I).Name = "Packing list" Then
Else
If Sheets(I).Name <= Val1 Then
Else
Sheets(I).Delete
End If
End If
Next

End Sub

et ça fonctionne !

Merci à vous deux pour votre aide.

A +
 
- 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
4
Affichages
692
Réponses
9
Affichages
830
Réponses
4
Affichages
694
Retour