Pourquoi ce code plante au dela d'un certain nombre de lignes dans un fichier excel ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 ActiveSheet.Shapes().SelectAll Selection.Delete
(Erreur automation)
Pourquoi ce code plante au dela d'un certain nombre de lignes dans un fichier excel ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 ActiveSheet.Shapes().SelectAll Selection.Delete
(Erreur automation)
Je te conseille une boucle For Each sur ta collection Shapes.
N'oubliez pas de cliquer surquand vous avez obtenu ou trouvé vous-même la réponse à votre question.
Si vous trouvez seul, pensez à poster votre solution. Elle peut servir à d'autres!
Pensez aussi à voter pour les réponses qui vous ont aidés.
------------
Je dois beaucoup de mes connaissances à mes erreurs!
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 Dim compteur As Integer nbr_lignes = ActiveSheet.UsedRange.Rows.Count For compteur = nbr_lignes To 1 Step -1 ActiveSheet.Shapes().Select Selection.Delete Next compteurC'est pas mieux !Erreur d'execution '-2147319765 (8002802b)':
erreur automation
element introuvable
Pas mieux !
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 Dim sr As ShapeRange ActiveSheet.Shapes.SelectAll Set sr = Selection.ShapeRange sr.Delete
Ce n'est pas du tout une boucle For Each dans une collection, ça!Envoyé par bernard38
Enfin, si la solution de bidou fonctionne, utilise-la. Elle est nettement plus simple.
N'oubliez pas de cliquer surquand vous avez obtenu ou trouvé vous-même la réponse à votre question.
Si vous trouvez seul, pensez à poster votre solution. Elle peut servir à d'autres!
Pensez aussi à voter pour les réponses qui vous ont aidés.
------------
Je dois beaucoup de mes connaissances à mes erreurs!
Il plante quand même a la ligne
Ca marche bien au dessous d mille lignes.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 ActiveSheet.Shapes.SelectAll
Là j'ai 1533 lignes et 7 col.
Et ça plante !
Mais si le but est de supprimer le contenu d'un onglet dans Excel, pourquoi ne fais-tu pas tout simplement
Heum... Je viens de lire le titre du post... Désolé...
Code : Sélectionner tout - Visualiser dans une fenêtre à part ActiveSheet.Cells.Clear![]()
Le but est de supprimer de petites images (genre petites enveloppes) après un copier coller de pages html dans ma feuilles
Et si tu fais deux passages avec gestion d'erreur sur le premier ?
Juste pour essyer de comprendre![]()
Tu dis
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 Dim sr As ShapeRange Dim ok as boolean Do while not ok ActiveSheet.Shapes.SelectAll Set sr = Selection.ShapeRange sr.Delete ok = err = 0 err.clear Set sr = Nothing loop
A+
NB - Possible que ça plante le system![]()
bonsoir
tu peux tester
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 Dim Obj As Shape For Each Obj In ActiveSheet.Shapes Obj.Delete Next Obj
bonne soiree
michel
Bonjour à tous,
Ma réponse est valable pour toutes les solutions proposées:
Je plante toujours au dela d'un certain nombre de lignes avec toujours le même message.
Je suis en train d'affiner pour voir exactement le nombre de lignes acceptées (entre 500 et 800)
Bon,apparemment il ne s'agit pas d'une erreur sur la fonction shape.
J'ai essayé ça:
Il me fait la même erreur à l'execution de la dernière ligne.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 Range("A1").Select Range(Selection, ActiveCell.SpecialCells(xlLastCell)).Select Selection.Copy Sheets.Add Range("A1").Select ActiveSheet.Paste Sheets("Feuil1").Select
On dirait qu'il ne connaît plus ma feuille1 ??
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager