Bonjour,
j'ai trouvé sur le site un tuto réalisé par Olivier Lebeau, j'ai tenté de le mettre en pratique pour mon projet, mais je rencontre quelques problèmes !
le code de départ :
Mon projet :
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 Sub MergeIt() Dim objWord As Word.Document Set objWord = GetObject("C:\Local Data\Access\Publipostage\Publipostage.doc", "Word.Document") ' Rend Word visible important puisque la fusion se fait à l'écran. objWord.Application.Visible = True ' Sélectionne .la base de données Comptoir comme source de données pour la fusion objWord.MailMerge.OpenDataSource _ Name:="C:\Local Data\Access\Publipostage\Comptoir.mdb", _ LinkToSource:=True, _ Connection:="TABLE Employés", _ SQLStatement:="SELECT * FROM [Employés]" ' Exécution de la fusion. objWord.MailMerge.Execute Set objWord = Nothing End Sub
Mon projet : c'est une table sur laquelle j'applique une requête, les données de la requête doivent garnir un document word existant, j'aurais aimé lancer cette macro par un bouton dans un formulaire !
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 Sub jlm() Dim objWord As Word.Document Set objWord = GetObject("C:\Users\MelchiorJL.PHILIPPEVILLE\Desktop\test.doc") ' Rend Word visible important puisque la fusion se fait à l'écran. objWord.Application.Visible = True ' Sélectionne .la base de données Comptoir comme source de données pour la fusion objWord.MailMerge.OpenDataSource _ Name:="C:\Users\MelchiorJL.PHILIPPEVILLE\Desktop\elections2010.mdb", _ LinkToSource:=True, _ Connection:="QUERY PlanV1 ", _ SQLStatement:="SELECT * FROM [PlanV1]" 'Exécution de la fusion. objWord.MailMerge.Execute Set objWord = Nothing End Sub
Les problèmes rencontrés dans mon code :
il ouvre le fichier mdb 2x, il crée 2 documents word, il me demande de confirmer la source de données...
Pouvez-vous m'aider ? (Novice+++)
JE CHERCHE !
En suppriment l'exécution de OpenDataSource ça fonctionne, je n'est plus 2 ouvertures de la BDD mais je n'ai plus le publipostage du document word, j'ai le doc Word en mode publipostage.
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 Sub jlm() Dim objWord As Word.Document Set objWord = GetObject("C:\Users\MelchiorJL.PHILIPPEVILLE\Desktop\test.doc") ' Rend Word visible important puisque la fusion se fait à l'écran. objWord.Application.Visible = True ' Sélectionne .la base de données Comptoir comme source de données pour la fusion 'objWord.MailMerge.OpenDataSource _ Name:="C:\Users\MelchiorJL.PHILIPPEVILLE\Desktop\elections2010.mdb", _ LinkToSource:=True, _ Connection:="QUERY PlanV1 ", _ SQLStatement:="SELECT * FROM [PlanV1]" ' Exécution de la fusion. 'objWord.MailMerge.Execute 'Set objWord = Nothing End Sub
Pouvez-vous me donner le bout de code pour déclencher mon publipostage dans un formulaire à partir d'un bouton ?
J'ai testé // code mais ça ne fonctionne pas, j'arrive a ouvrir le doc mais plus de publipostage !
Merci...
Partager