par florent » 09 Août 2002 à 09:46
Tu as du bol toi, c'est justement ce que je suis entrain de faire, mais personellement pour un débutant je toruve ca un peu compliqué.Eoute vu que j'ai pas tro le tps je vais te copier une partie de mon script et tu fera le tri.Set Apli = CreateObject ("Word.application" ) Call Apli.Documents.add("C:\Temp\"& o.Source) Set DocWord = Apli.activeDocument Dim SourceName As String SourceName = Trim("C:\Temp\" & o.Source) ' on va faire la correspondance avec le tablo word / Notes Dim tabword (0 To 20) As String Dim tabnotes (0 To 20) As String Dim tabnom (0 To 20) As String i=0 vart = Ubound(docmail.champword) Do While (i<=vart) tabword(i)=docMail.champword(i) tabnotes(i)=docMail.libchampnotes(i) i=i+1 Loop j=0 Do While (j<i) Set docnom = views.getdocumentbykey( tabnotes(j),True) tabnom(j) = docnom.nomchamp(0) j=j+1 Loop 'la on a le bon tablo de nom des champs word et notes ki correspondent ' on va remplir les champs dans le fichier maintenant k=0 Do While (k<i) If tabnom(k)="saisi" Then valword = tabword(k) vare_edit=espace.prompt(PROMPT_OKCANCELEDIT,"Saisie libre","Entrez le texte du champ word "+valword+" en saisie libre ") If vare_edit="" Then Exit Sub Else DocWord.FormFields(valword).result =vare_edit End If Else valword = tabword(k) valnom = tabnom(k) valnoms=doc.getitemvalue(valnom) DocWord.FormFields(valword).result =valnoms(0) End If k=k+1 Loop ' fin du traitement du fichier sourcename=Left(sourcename,Len(sourcename)-4)+" "+doc.nom(0)+Right(sourcename,4) Apli.ActiveDocument.SaveAs SourceName var_print=espace.prompt(PROMPT_YESNO,"Impression du document","Voulez vous imprimer le document ?") If var_print=1 Then 'si oui ' Apli.visible=True ' apli.dialogs(88).show apli.activedocument.printout Sleep(7) End If Apli.Application.Quit