Bonjour,
j'ai un document word contenant des signets dans lesquels je voudrais placer des éléments provenant d'un autre document word (un répertoire avec noms, adresses... mais aussi des objets du genre photos ou logos : chaque élément est marqué par un signet). Avec le code suivant, j'arrive à prendre un contenu de type texte, mais ça ne fonctionne pas avec des objets de type inlineshapes (images de logos scannés par exemple).
Deux problèmes à résoudre :
* faire un copier-coller à partir du contenu d'un signet dans un document word vers un signet d'un autre document word
* sélectionner une zone à copier dans le répertoire à partir d'un seul signet (économiserait la création de nombreux signets dans le répertoire)
Merci d'avance si quelqu'un a une solution.
Voici le code actuel :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
Private Sub OK_Click()
.............
 'on défini le chemin du répertoire des noms
 
Dim AppWord As Word.Application
Dim DocWord As Word.Document
Dim x As Long
Dim Repertoire As String
Repertoire = "C:\...........\Repertoire.docx"
 
'définit et ouvre une instance Word
Set AppWord = New Word.Application 'set permet d'attribuer une valeur à une variable objet
'Indiquez False pour garder l'application masquée
AppWord.Visible = True
'défini et ouvre le document Word
Set DocWord = AppWord.Documents.Open(Repertoire)
 
   If DocWord.Bookmarks.Exists(SignetSource) = True And ActiveDocument.Bookmarks.Exists("SignetCible") = True Then
        ActiveDocument.Bookmarks("SignetCible").Range.Text = DocWord.Bookmarks("SignetSource").Range.Text
    Else
End If
Unload Me