Bonjour,
Je dois créer un fichier qui servira à faire une fusion dans word. Mon programme utilise une requète SQL qui est toujours différente pour faire le fichier de fusion. J'ai penser utiliser les macros de Word et les transposer dans mon code mais ça ne fonctionne pas... voici donc mon code (m_request est ma requète)
Public Function Fusion()
Dim ictr As Integer
Dim UnDocument As New Document
UnDocument.Application.Visible = False
Documents.Add
ActiveDocument.MailMerge.OpenDataSource Name:="E:\Projet VB\membres.mdb", _
ConfirmConversions:=False, ReadOnly:=False, LinkToSource:=True, _
AddToRecentFiles:=False, PasswordDocument:="", PasswordTemplate:="", _
WritePasswordDocument:="", WritePasswordTemplate:="", Revert:=False, _
Format:=wdOpenFormatAuto, Connection:= _
"Provider=Microsoft.Jet.OLEDB.4.0;Password="""";User ID=Admin;Data Source=E:\Projet VB\membres.mdb;Mode=Read;Extended Properties="""";Jet OLEDB:System database="""";Jet OLEDB:Registry Path="""";Jet OLEDB:Database Password="""";Jet OLEDB:Engine Type=5;Jet OLEDB:Datab" _
, SQLStatement:=m_Request, SQLStatement1:="", SubType:= _
wdMergeSubTypeAccess
For ictr = 0 To rstADOResultat.Fields.Count - 1
ActiveDocument.Fields.Add Range:=Selection.Range, Type:=wdFieldMergeField _
, Text:="""" + rstADOResultat.Fields(ictr).Name + """"
Next
End Function
Le problème c'est que la promière ligne contient plus de 255 caractère. Comment la séparer?
Ensuite, ma boucle FOR cause une erreur: "Object Variable or With Block Variable not set" je crois que c'est le Selection.range qui fait cette erreur, mais quoi mettre à la place?!?
Si vous pouvez m'aider avec cette solution je vous remercie BEAUCOUP. Si vous avez une meilleure solution, je vous adore!
