Supprimer image via une macro

Résolu
Ju@nita Messages postés 153 Date d'inscription mardi 11 juin 2013 Statut Membre Dernière intervention 20 mars 2025 - 20 mars 2025 à 18:39
Ju@nita Messages postés 153 Date d'inscription mardi 11 juin 2013 Statut Membre Dernière intervention 20 mars 2025 - 20 mars 2025 à 19:19

Bonjour,

j'ai converti un fichier pdf en fichier excel et vu que, rendu dans excel, il y aura plusieurs tâches répétitives, je veux mettre le plus possible d'étape dans une macro. Mais la toute première étape consistera à éliminer les images (logos etc...) qui seront dans le document. J'ai fait quelques tests et je vois que ce sera possible. Par contre, au niveau du logo, si le document a 3 pages, le logo y sera trois fois. S'il y a 5 pages, il y sera 5 fois.

Ma première question est :

Quelle est la meilleure façon d'éliminer toutes les images du document d'un coup ?  Dans le cas présent, le logo se retrouve nommé image1.jpeg dans ma macro test, et ça donne :

 ActiveSheet.Shapes.Range(Array("image1.jpeg")).Select
    Selection.Delete

Peut-on faire répéter cette action jusqu'à ce qu'il n'y en ait plus ?

Mais comme il y a au moins 2 autres images (dont image2.jpeg et image3.jpeg) qui peuvent aussi se répéter tout dépendant du nombre de pages, peut-on alors remplacer le chiffre par une variable qui engloberait toutes les images possible du document ?

merci


Windows / Chrome 133.0.0.0

A voir également:

4 réponses

Nain_Porte_Quoi Messages postés 23 Date d'inscription vendredi 7 février 2025 Statut Membre Dernière intervention 9 avril 2025 2
Modifié le 20 mars 2025 à 19:05

Hello,

pour faire simple

Sub Supprimer_Toutes_Les_Images()
    Dim Image As Shape
    For Each Image In ActiveSheet.Shapes
        Image.Delete
    Next Image
End Sub
0
The_boss_68 Messages postés 950 Date d'inscription dimanche 15 novembre 2015 Statut Membre Dernière intervention 10 avril 2025 181
Modifié le 20 mars 2025 à 19:10

Bonsoir,

OU

Sub test()
Dim sha As Shape
For Each sha In ActiveSheet.Shapes
    If sha.Type = msoPicture Then sha.Delete
Next sha
End Sub
0
danielc0 Messages postés 1719 Date d'inscription mardi 5 juin 2018 Statut Membre Dernière intervention 18 avril 2025 207
20 mars 2025 à 19:15

Bonjour,

Essaie :

Sub test()
  ActiveSheet.Shapes.SelectAll
  Selection.Delete
End Sub

Daniel


0
Ju@nita Messages postés 153 Date d'inscription mardi 11 juin 2013 Statut Membre Dernière intervention 20 mars 2025
20 mars 2025 à 19:19

Wow, je ne m'attendais pas à plusieurs réponses. 

Merci à tous, j'ai hâte d'essayer tout ça.

bonne journée

0