Bonjour

Même si le titre parle principalement de Word, je mets le sujet dans Acces car toutes les manips se font depuis Access.

Je sais pas si je vais bien pouvoir expliquer mais je vais essayer.

J'ai une base Access et un fichier Word.

Mon document Word permet de faire des courrier type à partir de Access.

Exemple :
Je suis sur une fiche client.
Dans la fiche client j'ai une liste déroulante qui me permet de choisir le contenu du Courrier (Demande de renseignement, demande de documents, ...)
Sur la fiche client, j'ai un bouton qui me permet d'ouvrir un document Word (Courrier type) et qui renseigne des signets en fonction des renseignements de la fiche client et en fonction du chois fait dans la liste déroulante.
Les signets sont donc renseignés avec la base Access pour les coordonnées du client et par un autre fichier Word pour le contenu du courrier (choie de la liste déroulant).
Je me retrouve donc avec un document Word avec le contenu d'un autre document word au niveau d'un signet (comme si dans mon doc Word, je faisais "Insertion" / "Fichier" et je choisi le fichier de la liste déroulante.

Jusque là, pas de problème.

Je sais pas si c'est très compréhensible ???


Le truc, c'est que je voudrais savoir si il était possible d'ajouter des signets dans le document inséré qui seraient renseigné par la fiche client de la base Access.

Voici le code du bouton dans Access :
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
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
 
Private Sub CmdMarge_Click()
 
 
If IsNull(Me.Modifiable6) Then
    MsgBox ("Il faut choisir un Fax")
    Exit Sub
End If
 
Dim rs As Recordset
Dim db As Database
Dim SQL As String
Dim Wapp As Word.Application
'Dim AppW As Word.Application
Dim DocW As Word.Document
Dim chemin As String
 
chemin = "D:\Company Shared Folders\Secure BD"
Set Wapp = New Word.Application
'Set AppW = CreateObject("Word.Application")
'AppW.Visible = False
Wapp.Visible = True
Wapp.Documents.Add Template:=chemin & "\Fax.dot", NewTemplate:=False, DocumentType:=0
Wapp.Activate
'DocW.Documents.Add Template:=chemin & Me.Modifiable6.Column(1), NewTemplate:=False, DocumentType:=0
 
 
SQL = "SELECT * FROM Rq_Secure WHERE Réf_Sinistre=" & Chr(34) & Me.Réf_Sinistre & Chr(34) & "AND Ville=" & Chr(34) & Me.Ville & Chr(34)
 
Set db = CurrentDb
Set rs = db.OpenRecordset(SQL)
 
While Not rs.EOF
    With Wapp
        .ActiveDocument.Bookmarks("Sinistre").Range.Text = Nz(rs.Fields("Réf_Sinistre"), " ")
        .ActiveDocument.Bookmarks("Contrat").Range.Text = Nz(rs.Fields("n°Police"), " ")
        .ActiveDocument.Bookmarks("Conces").Range.Text = Nz(rs.Fields("Conces_Concessionnaire"), " ")
        .ActiveDocument.Bookmarks("Fax").Range.Text = Nz(rs.Fields("Fax"), " ")
        .ActiveDocument.Bookmarks("Nom").Range.Text = Nz(rs.Fields("Nom"), " ")
        .ActiveDocument.Bookmarks("Client").Range.Text = Nz(rs.Fields("Client_Utilisateur"), " ")
        .ActiveDocument.Bookmarks("Type").Range.Text = Nz(rs.Fields("Type_Machine"), " ")
        .ActiveDocument.Bookmarks("Modele").Range.Text = Nz(rs.Fields("Désignation"), " ")
        .ActiveDocument.Bookmarks("Serie").Range.Text = Nz(rs.Fields("N°_de_série"), " ")
        .ActiveDocument.Bookmarks("Date_Appel").Range.Text = Nz(rs.Fields("Date_appel_en_GTI"), " ")
        .ActiveDocument.Bookmarks("Nom_2").Range.Text = Nz(rs.Fields("Nom"), " ")
        .ActiveDocument.Bookmarks("Interv").Range.Text = Nz(rs.Fields("Interventiuon"), " ")
    End With
    rs.MoveNext
Wend
 
Wapp.Selection.InsertFile _
                         Filename:="D:\Company Shared Folders\Secure BD\Bloc_Courrier_Fax\" & Me.Modifiable6.Column(1), _
                         Range:="", _
                         ConfirmConversions:=False, _
                         Link:=False, _
                         Attachment:=False
 
Set rs = Nothing
Set db = Nothing
 
End Sub
A savoir que certaines données de la base seraient présente dans certains fichier Word inséré mais pas systématique les même en fonction du chois de courrier (ou fax).


J’espère que vous avez un petit peut compris.

Bonne soirée
A+