Supprimer image via une macro

Résolu
Ju@nita Messages postés 163 Date d'inscription   Statut Membre Dernière intervention   -  
Ju@nita Messages postés 163 Date d'inscription   Statut Membre Dernière intervention   -

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

4 réponses

  1. Nain_Porte_Quoi Messages postés 170 Date d'inscription   Statut Membre Dernière intervention   36
     

    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
  2. The_boss_68 Messages postés 959 Date d'inscription   Statut Membre Dernière intervention   182
     

    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
  3. danielc0 Messages postés 2201 Date d'inscription   Statut Membre Dernière intervention   291
     

    Bonjour,

    Essaie :

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

    Daniel


    0
  4. Ju@nita Messages postés 163 Date d'inscription   Statut Membre Dernière intervention   2
     

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

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

    bonne journée

    0