Bonjour a tous, ci dessous un bout de code "Qui fonctionne" et oui.
Seulement je souhaiterais pourvoir nommer les champs et les réutilisers a différents endroit dans le document word, car dans ce cas je les parcoures et les remplis au fur et a mesure de l'incrémentation de i.
Je voudrais donc pourvoir avoir un champs qui s'appelle <<MonNom>> dans word et le remplacer par la valeur provenant du code
Si quelqu'un a un bout de code ( exemple) se serait le pied

Merci bien

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
 
Dim oApp As Word.Application
            Dim oDoc As Word.Document
            Dim oField As Word.Field
            Dim i As Integer
            Dim Field1 ,Field2,Field3,Field4, Field5 , Field6 As String
 
            Field1 = "Champs1"
            Field2 = "Champs2" 
            Field3 = "Champs3"
            Field4 = "Champs4"
            Field5 = "Champs5"
            Field6 = "Champs6"
 
            Try
                  oApp = New Word.Application()
                  oDoc = oApp.Documents.Open(StringTemplate & "MonDoc.doc", , False)
 
                  i = 0
                  For Each oField In oDoc.Fields
                        i = i + 1
 
                        Select Case i
 
                              Case 1
                                    oDoc.Fields.Item(i).Result.Text = Field1
                              Case 2
                                    oDoc.Fields.Item(i).Result.Text = Field2
                              Case 3
                                    oDoc.Fields.Item(i).Result.Text = Field3
                              Case 4
                                    oDoc.Fields.Item(i).Result.Text = Field4
                              Case 5
                                    oDoc.Fields.Item(i).Result.Text = Field5
                              Case 6
                                    oDoc.Fields.Item(i).Result.Text = Field6
 
                        End Select
 
                  Next
 
                  oApp.Visible = True
                  oDoc.Close()
                  oApp.Quit()
 
            Catch ex As System.Exception
 
                  MsgBox(ex.ToString)
 
            End Try