VBA Word - supprimer des images sur des signets

Bonjour,

J'ai besoin d'aide pour un cas particulier de macro VBA.

Je me sers de VBA pour ouvrir des fichiers Word et coller des tableaux qui se trouve dans un fichier Excel sous forme d'image à l'aide de signets.

De ce côté, tout marche bien.

Les documents Word ont d'autres images et elles ne doivent pas être mis à jour.

Mon pb est donc d'actualiser les données des tableaux sur les signets seulement. Je ne peux pas mettre un code pour supprimer les images du Word sinon je perds toutes les images donc je voudrais savoir si c'est possible de supprimer seulement les images qui se trouvent sur les signets pour que je puisse coller les nouvelles images par la suite.

Merci d'avance

NB: je ne peux pas joindre de fichier, il s'agit de données confidentielles.

Juste pour préciser, les tableaux insérés en image sur le signets sont considérés en InlineShapes.

Y -a-t-il un moyen de supprimer que les InlineShapes choisis?

Bonjour Sneaky,

Tu devrais pouvoir t'inspirer du code ci-dessous. J'ai essayé en partant des BookMarks mais je n'ai pas trouvé ...

Sub SupprImageDuSignet(cSignet As String)
Dim isImage As Word.InlineShape
Dim wdMonDoc As Word.Document
Dim bmSignet As Bookmark
Dim lImageTrouve As Boolean                         ' à supprimer s'il peut y avoir plusieurs images associées à un même signet
   Set wdMonDoc = Word.Documents("MonDoc.Docx")
   lImageTrouve = False
   For Each isImage In wdMonDoc.InlineShapes
      If (isImage.Type = wdInlineShapeLinkedPicture) Or (isImage.Type = wdInlineShapePicture) Then
         If isImage.Range.Bookmarks.Count > 0 Then
            For Each bmSignet In isImage.Range.Bookmarks
               If bmSignet.Name = cSignet Then
                  isImage.Delete
                  lImageTrouve = True               ' à supprimer s'il peut y avoir plusieurs images associées à un même signet
                  Exit For                          ' à supprimer s'il peut y avoir plusieurs images associées à un même signet
               End If
            Next
            If lImageTrouve = True Then Exit For    ' à supprimer s'il peut y avoir plusieurs images associées à un même signet
         End If
      End If
   Next
End Sub
Rechercher des sujets similaires à "vba word supprimer images signets"