[ASP]Modifier un fichier Word

Modifier un fichier Word [ASP] - ASP - Programmation

Marsh Posté le 17-01-2003 à 10:30:47    

Bonjour à tous.
Voila je cherche à modifier un fichier Word, typiquement, un modèle ou on rajoute des données provennant d'une base de données.
Pour diverses raisons, je ne peut pas utiliser le publipostage, la principal étant de pouvoir générer un fichier en allant chercher une liste de contact dans une base, et par exemple afficher tout les destinataires en copie sur une seule page, le publipostage ne permet pas ce genre de chose.
Bref, mon idée était de créer un .dot, avec dedans des mots clés, et ensuite, toujours en asp, executer un rechercher/remplacer qui remplacerait mes mots clés par les données de ma base.
Le problèmes, c'est que j'arrive bien à mettre en place toute la recherche, mais j'arrive pas à l'executer :/
Donc si vous savez comment faire, je prends, si vous avez une autre idée, pour contourner le problème, je prends aussi :D
Pour info voila ce que j'ai fait :
 
 

Code :
  1. <%
  2. set rs = Server.CreateObject("ADODB.Recordset" )
  3. rs.Open "SELECT * from Users ", "DSN=Intranet;", 1, 2
  4. 'Déclaration de l'objet Word
  5. Set WordObject = CreateObject("Word.Application" )
  6. WordObject.Application.Visible = False
  7. 'Ouverture du document de fusion et lancement de la commande de fusion
  8. Set WordDoc = WordObject.Documents.Open(Server.MapPath("modele.dot" ))
  9. WordObject.Selection.ClearFormatting
  10. WordObject.Selection.Find.ClearFormatting
  11. 'Code VBA provennant de Word
  12. 'Selection.HomeKey Unit:=wdStory
  13. Set Truc = WordObject.Selection
  14. With Truc
  15. Unit = wdStory
  16. End With
  17. Set Mypar2 = WordDoc.Paragraphs.Add
  18. Set MyRange2 = Mypar2.range
  19. MyRange2.InsertBefore("Texte" )
  20. Set LaSelection = WordObject.Selection.Find
  21. With LaSelection
  22. .Text = "Ligne 1"
  23. .Replacement.Text = "Bonjour, ceci est du texte !"
  24. .Forward = True
  25. .Wrap = wdFindContinue
  26. .Format = False
  27. .MatchCase = False
  28. .MatchWholeWord = False
  29. .MatchKashida = False
  30. .MatchDiacritics = False
  31. .MatchAlefHamza = False
  32. .MatchControl = False
  33. .MatchWildcards = False
  34. .MatchSoundsLike = False
  35. .MatchAllWordForms = False
  36. End With
  37. C'est la que ca merde ->
  38. Set machin = WordObject.Selection.Find.Execute
  39. With machin
  40. Replace = wdReplaceAll
  41. End With
  42. 'Code VBA provennant de Word
  43. 'WordObject.Selection.Find.Execute Replace:=wdReplaceAll
  44. 'Sauvegarde du document fusionné
  45. WordObject.ActiveDocument.SaveAs Server.MapPath("fichier.doc" )
  46. 'Fermeture des différents documents, de Word et libération de la variable
  47. WordObject.ActiveDocument.Close
  48. WordObject.Application.Quit
  49. Set WordObject = Nothing
  50. %>


Voila c'est le execute que j'arrive pas à faire :/
Merci à ceux qui ont une idée (et aux autres aussi :D)


---------------
"Ne jamais faire confiance à un truc qui peut saigner 4-5 jours par mois sans crever !"
Reply

Marsh Posté le 17-01-2003 à 10:30:47   

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed