Bonjour,

Après beaucoup de temps passé à chercher la solution, je bloque toujours sur le même problème..

Je souhaite pouvoir récupérer des données d'un tableau Excel et les mettre dans un fichier Word (en utilisant des signets).
J'ai donc créé des signets dans mon fichier word, que je viens récupérer dans mon code VBA, mais je me retrouve toujours avec une erreur sans comprendre pourquoi.

Ci-dessous mon code VBA Excel :
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
23
24
25
26
27
Sub MacroTestWord()
 
Dim CompanyName
Dim Address
'_______________________________________________________
'Ouverture Template word en fonction du chemin
 
    Set WordTemplate = CreateObject("word.Application")
    WordTemplate.Documents.Open "P:\1_EUROPP\9_TEST\Presentation_mission.docx"
    WordTemplate.Visible = True
    WordTemplate.ShowMe 'Met le doc word au premier plan
 
    CompanyName = Sheets("Extract").[B1]
    Address = Sheets("Extract").[B4]
 
    With WordTemplate
        '.Selection.Text = CompanyName
 
        'Le nom du signet dans le document word est ici "Signet1"
        .Bookmarks("Signet1").Range.Text = CompanyName
        'Le nom du signet dans le document word est ici "Signet2"
        '.Bookmarks("Signet2").Range.Text = Address
    End With
 
    Set WordTemplate = Nothing
 
End Sub
Je récupère bien les infos que je veux dans les variables "CompanyName" et "Address", et j'arrive à l'afficher dans le word, mais pas à l'endroit du signet.

Le problème intervient au niveau de la ligne d'appel des signets (.Bookmarks("Signet1").Range.Text = CompanyName).
Le code erreur est '438' :
Propriété ou méthode non générée par cet objet.
Y a-t-il une manipulation particulière pour créer le signet dans le document word, ou bien quelque chose à faire pour faire la liaison avec Excel ?
Ou le problème vient de ma ligne de code ?

Merci pour votre aide !