[URGENT] Prob avec vbs et word

cs_talras Messages postés 2 Date d'inscription mercredi 6 juillet 2005 Statut Membre Dernière intervention 8 juillet 2005 - 6 juil. 2005 à 17:31
cs_talras Messages postés 2 Date d'inscription mercredi 6 juillet 2005 Statut Membre Dernière intervention 8 juillet 2005 - 8 juil. 2005 à 09:13
Salut à tous,

Je débute en vbs et je souhaite pouvoir fusionner des données venant d'un fichier texte dans un modele word en .dot.

Voici mon code :

Dim source, p1, p2, p3, p4, p5
source = "c:\test.txt"

Call Main()


Sub Main()


CreateSource()
Wordprinting()

End Sub


Sub CreateSource()

Dim txt, titre
titre = "col1#col2#col3#col4#col5"
txt = p1 & "#" & p2 & "#" & p3 & "#" & p4 & "#" & p5
Set FSO = CreateObject("Scripting.FileSystemObject")

Set Fic = FSO.CreateTextFile("c:\testvbs.txt", ForWriting, True)
Fic.Writeline titre
Fic.WriteLine txt
Fic.close


End Sub


Sub WordPrinting()


Set AppWord = CreateObject("Word.Application")
Set DocWord = AppWord.Documents.Open("c:\test.dot")

DocWord.MailMerge.OpenDataSource source

AppWord.Visible = True

End Sub


J'ai 2 problemes :

- le 1er je ne sais pas comment récuperer mes arguments (p1, p2 etc...) depuis l'execution du script
- le 2 eme : j'ai tjs une erreur de compilation sur la ligne Set AppWord = CreateObject("Word.Application") avec le message d'erreur : ClassFactory ne peut pas fournir la classe demandée.

quand je lance mon script je le fais de la facon suivante : cscript test.vbs p1 p2 p3 p4 p5

Pourriez vous m'aider, je ne sais pas où trouver l'info :(

Merci d'avance.

2 réponses

CTAC Messages postés 133 Date d'inscription mardi 24 décembre 2002 Statut Membre Dernière intervention 8 juin 2012 5
7 juil. 2005 à 00:08
Bonjour.


Voici une base. je ne peux rien de plus pour toi. je ne connais pas word et je ne dispose pas du dot.


Dim p, titre, txt, FSO, Fic, AppWord, DocWord
Set p = WScript.Arguments
titre = "col1#col2#col3#col4#col5"
txt = p(0) & "#" & p(1) & "#" & p(2) & "#" & p(3) & "#" & p(4)
Set FSO = CreateObject("Scripting.FileSystemObject")
Set Fic = FSO.OpenTextFile("c:\testvbs.txt",2, True)
With Fic
.Writeline titre
.WriteLine txt
.Close
End With
Set AppWord = CreateObject("Word.Application")
Set DocWord = AppWord.Documents.Open("c:\testvbs.txt")
AppWord.Visible = True
Set DocWord = Nothing
Set AppWord = Nothing
Set Fic = Nothing
Set FSO = Nothing
Set p = Nothing


ctac


Pour de l'info :


http://www.bellamyjc.net
0
cs_talras Messages postés 2 Date d'inscription mercredi 6 juillet 2005 Statut Membre Dernière intervention 8 juillet 2005
8 juil. 2005 à 09:13
Merci beaucoup pour le passage d'arguments !!! Je vins de tester l'affaire ca marche:)

Il me reste à traiter le problème du lancement de Word et là ca semble être plus délicat. Si quelqu'un peut m'aider ?

Merci à tous d'avance et merci à toi CTAC :)
0