Excel VBA suppression images shapes
mimi
-
belairaway Messages postés 1 Date d'inscription Statut Membre Dernière intervention -
belairaway Messages postés 1 Date d'inscription Statut Membre Dernière intervention -
Bonjour tout le monde :0)
Je voudrais supprimer par macro toutes les images importées dans une feuille
pour une image, l'instruction fonctionne
ActiveSheet.Shapes("Picture 37").Select
Selection.Delete
Mais je ne connais pas les noms des shapes (à chaque que j'importe une image, Excel incrémente le no dePicture)
je voudrais un truc du genre mais mon code ne fonctionne pas
For Each Shapes In Sheets
Selection.Delete
Next
Merci d'avance pour vos suggestions :0)
Mimi
Je voudrais supprimer par macro toutes les images importées dans une feuille
pour une image, l'instruction fonctionne
ActiveSheet.Shapes("Picture 37").Select
Selection.Delete
Mais je ne connais pas les noms des shapes (à chaque que j'importe une image, Excel incrémente le no dePicture)
je voudrais un truc du genre mais mon code ne fonctionne pas
For Each Shapes In Sheets
Selection.Delete
Next
Merci d'avance pour vos suggestions :0)
Mimi
A voir également:
- Excel VBA suppression images shapes
- Forcer suppression fichier - Guide
- Liste déroulante excel - Guide
- Word et excel gratuit - Guide
- Déplacer colonne excel - Guide
- Si ou excel - Guide
9 réponses
Salut,
Sub efface() Dim img As Object For Each img In Worksheets(1).Shapes 'ou Worksheets("nom").Shapes img.Delete Next End Sublami20j
Re,
Utilise plutôt celui là
Utilise plutôt celui là
Option Explicit Option Compare Text 'insensible à la casse de caractères Sub efface() Dim img As Shape For Each img In Worksheets("a").Shapes If img.Name Like "PICTURE*" Then img.Delete End If Next End Sublami20j
hello lami20j, tu as l'air plutot fort en vba, voila je me permet de poser une question dans le même topic je cherche moi aussi à extraire les images sauf que cette fois ce n'est pas dans un classeur mais dans un document word, j'ai essayé de faire : for each img in DocWOrd.shapes (docword etant mon doc word ^^), mais cela ne marche pas, y a t-il une solution de possible ?
Pour tester la cellule sous une shape (plus exactement la cellule située sous le coin supérieur gauche), on peut utiliser la propriété TopLeftCell de l'objet shape. À partir de là, savoir si c'est la colonne F est facile.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Dim obj As Shape
For Each obj In ActiveWorkbook.ActiveSheet.Shapes
obj.Delete
Next
Ça devrait faire l'affaire !
For Each obj In ActiveWorkbook.ActiveSheet.Shapes
obj.Delete
Next
Ça devrait faire l'affaire !
Merci beaucoup pour la solution : elle fonctionne impécablement
:0)
personnalisé à mon onglet, cela donne :
Dim img As Object
For Each img In Sheets("travail").Shapes
img.Delete
Next
longue vie au forum !!
Mimi
:0)
personnalisé à mon onglet, cela donne :
Dim img As Object
For Each img In Sheets("travail").Shapes
img.Delete
Next
longue vie au forum !!
Mimi
@zorgloub
J'ai bien peur que la notion d'image dans la colonne F n'ai pas lieu d'être. En effet, une image n'est pas installée dans une cellule, elle est collée par dessus la feuille, puis est positionnée (ce qui donne parfois l'illusion qu'elle se trouve dans une colonne.
Je pense que pour supprimer ces dites images, il faudrait que tu joues dans la macro avec leur position (Top, Left...) afin de déterminer les images qui se situent au niveau de la colonne F.
A moins que quelqu'un ai une autre idée...
A bientôt.
MA
J'ai bien peur que la notion d'image dans la colonne F n'ai pas lieu d'être. En effet, une image n'est pas installée dans une cellule, elle est collée par dessus la feuille, puis est positionnée (ce qui donne parfois l'illusion qu'elle se trouve dans une colonne.
Je pense que pour supprimer ces dites images, il faudrait que tu joues dans la macro avec leur position (Top, Left...) afin de déterminer les images qui se situent au niveau de la colonne F.
A moins que quelqu'un ai une autre idée...
A bientôt.
MA
Un peu tard mais ca fait toujours du bien de trouver ce genre de solution.
Ce code effeca parfaitement bien toutes les images de la feuille mais quel serait le code pour n'effacer que toutes les images se trouvant dans la colonne F, par exemple ?
merci
Une idée pour ne pas supprimer les boutons ?
Merci quand même :)