Erreur d'exécution '1004'

Résolu/Fermé
aminesc Messages postés 70 Date d'inscription dimanche 25 octobre 2015 Statut Membre Dernière intervention 3 juillet 2017 - Modifié par jordane45 le 26/05/2016 à 18:09
aminesc Messages postés 70 Date d'inscription dimanche 25 octobre 2015 Statut Membre Dernière intervention 3 juillet 2017 - 7 juin 2016 à 13:18
Bonjour,

je veux supprimer les donnes de plusieurs page , voici ce que j'ai fais :
Sub supClic()



If MsgBox("Confirmez-vous la suppression totale du Brouillard ?", vbYesNo, "Demande de confirmation de suppression") = vbYes Then




'supprimer tous les donnes de la feuille brouiard
Sheets("Brouillard_Caisse").Select

DernLigne_brouillard = Worksheets("Brouillard_Caisse").Range("B" & Rows.Count).End(xlUp).Row 'deteriner fin de ligne
debut_brouillard = 10
Rows(debut_brouillard & ":" & DernLigne_brouillard).Select
Selection.Delete Shift:=xlUp


'supprimer tous les donnes de la feuille pc compta
Sheets("PC_COMPTA").Select

DernLigne_COMPTA = Worksheets("PC_COMPTA").Range("A" & Rows.Count).End(xlUp).Row 'deteriner fin de ligne
debut_COMPTA = 2
Rows(debut_COMPTA & ":" & DernLigne_COMPTA).Select
Selection.Delete Shift:=xlUp

end if 
end sub 


EDIT : Ajout des balises de code (la coloration syntaxique).
Explications disponibles ici :ICI

Merci d'y penser dans tes prochains messages.


voici le message qui excel me donne : Erreur d'exécution '1004' la méthode delete de la classe a échoué ??????????

3 réponses

jordane45 Messages postés 38150 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 29 avril 2024 4 651
26 mai 2016 à 18:12
Bonjour,

Déjà.. tu n'es pas (il faut même éviter) obligé de faire un select ...puis un suppr...
ceci :
Rows(debut_brouillard & ":" & DernLigne_brouillard).Select
Selection.Delete Shift:=xlUp

doit pouvoir s'écrire :
Rows(debut_brouillard & ":" & DernLigne_brouillard).Delete Shift:=xlUp


Ensuite... as tu essayé ton code en mode pas à pas histoire de voir si les variables debut_brouillard,DernLigne_brouillard ou celles de l'autre delete sont bonnes ?
Et puis.. sur laquelle des deux lignes exactement te met-il l'erreur ?

et vu que tu as debut_brouillard = 10
es tu sûr que DernLigne_brouillard est supérieur à 10 ?

1
aminesc Messages postés 70 Date d'inscription dimanche 25 octobre 2015 Statut Membre Dernière intervention 3 juillet 2017
29 mai 2016 à 11:06
Bonjour jordane45,

Pour la dernière ligne c'est vérifier elle est toujours plus de 10 , j' ai essaye l'execution pas à pas le problème est dans cette ligne :

Rows(debut_brouillard & ":" & DernLigne_brouillard).Delete Shift:=xlUp
0
aminesc Messages postés 70 Date d'inscription dimanche 25 octobre 2015 Statut Membre Dernière intervention 3 juillet 2017
5 juin 2016 à 17:02
Toujours pas de solution
0
jordane45 Messages postés 38150 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 29 avril 2024 4 651 > aminesc Messages postés 70 Date d'inscription dimanche 25 octobre 2015 Statut Membre Dernière intervention 3 juillet 2017
5 juin 2016 à 17:29
Je n'ai pas eu le temps de reagarder.
Déjà.. tu peux essayer de mettre un point d'arrêt sur ton code ( à la ligne indiquée par l'erreur) et de regarder, lorsque l'erreur se produit quelles sont les valeurs de tes différentes variables.
Ensuite, vérifie que tu n'as pas de lignes ou de colonnes fusionnées. Le souci peut venir de là.
0
pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 2 745
7 juin 2016 à 11:36
Bonjour,

Et si, et si, et si...

Fouillons tous dans notre boule de cristal...

Mmmmhhh...
Et si...

Supposition 1 :
Et si tu déprotégeais ta feuille "Brouillard_Caisse"?
Sheets("Brouillard_Caisse").Select
ActiveSheet.Unprotect ' "motdepasse" éventuel


1
aminesc Messages postés 70 Date d'inscription dimanche 25 octobre 2015 Statut Membre Dernière intervention 3 juillet 2017
7 juin 2016 à 13:18
Bonjour pijaku,

et oui , et oui

ta raison mon pote les pages étais verrouiller .

merci a toi et a tous
0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 303
6 juin 2016 à 08:30
Bonjour,
essaies plutôt ceci


With Sheets("Brouillard_Caisse")
dernligne = .Range("B" & Rows.Count).End(xlUp).Row 'deteriner fin de ligne
debut = 10
.Range("B" & debut & ":B" & dernligne).SpecialCells(xlCellTypeConstants, 23).EntireRow.Delete
End With
'...etc

0
aminesc Messages postés 70 Date d'inscription dimanche 25 octobre 2015 Statut Membre Dernière intervention 3 juillet 2017
6 juin 2016 à 12:12
Bonjour michel_m,
Toujours sa marche pas voici le message qui apparais
:impossible d'utiliser cette commande sur des sélections qui se superposent.
0
jordane45 Messages postés 38150 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 29 avril 2024 4 651 > aminesc Messages postés 70 Date d'inscription dimanche 25 octobre 2015 Statut Membre Dernière intervention 3 juillet 2017
6 juin 2016 à 23:30
Je répète au cas où :

Déjà.. tu peux essayer de mettre un point d'arrêt sur ton code ( à la ligne indiquée par l'erreur) et de regarder, lorsque l'erreur se produit quelles sont les valeurs de tes différentes variables.
0
aminesc Messages postés 70 Date d'inscription dimanche 25 octobre 2015 Statut Membre Dernière intervention 3 juillet 2017 > jordane45 Messages postés 38150 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 29 avril 2024
7 juin 2016 à 11:07
Bonjour,
l'erreur indique est dans la ligne :
Rows(debut_brouillard & ":" & DernLigne_brouillard).Delete Shift:=xlUp


je vois pas comment faire un arrêt , pour les valeurs debut_brouillard=10
DernLigne_brouillard=12.
0