strikeforce
Goto Top

Mit VBScript am anfang jeder Zeile etwas hinzufügen

Hallo liebe Gemeinde.

Ich habe hier eine kleine VBS-Datei, mit der ich in JEDER Zeile
etwas an erster stelle einfügen will.

Die VBS-Datei sieht im Moment so aus:

_________________________________________________________________

Const ForReading = 1
Const ForWriting = 2

Set objFSO = CreateObject("Scripting.FileSystemObject")

Set objFile = objFSO.OpenTextFile("list.txt", ForReading)

strText = objFile.Readall

objFile.Close

strNewText =Replace(strText, strText, "start WINWORD.EXE "+strText)

Set objFile = objFSO.OpenTextFile("list.txt", ForWriting)

objFile.Writeline strNewText

objFile.Close

_________________________________________________________________

Mit diesen Code kommt aber als Result nur in der 1. Zeile das "start Winword.exe ",
mein Ziel ist es eigentlich gewesen, dass in jeder Zeile dieses "start Winword.exe "
stehen soll.


Was macht das Programm insgesamt:

Also das Programm, naja wohl eher Script, besteht aus 2 Batch Dateien, 2 VBS-Dateien und 3 Makros.
Die Makros sind in Word verknüpft und funktionieren, die andere VBS-Datei funktioniert auch (diese setzt nach der
aufgelisteten Dateien hinter den Dateiendungen ein /mConvert um die Word Dateien zu konvertieren),
die 1. Batch listet alle Dokumente mit der bestimmten Dateiendung auf, schreibt diese in eine *.TXT Datei,
führt dann die VBS-Scripte aus, benennt die *.txt in eine *.bat um und ruft diese dann auf.

Das klappt auch alles wunderbar, nur der eine Schönheitsfehlerwie oben beschrieben lässt die ganze Sache
ein wenig ins Wasser fallen. Und nach mehrstündiger Google-Suche ist mir kein besserer Weg eingefallen,
als mein Problem hier zu Schildern.

Ich freue mich schon auf Lösungsvorschläge!

Mit freundlichen Grüßen.

Content-Key: 141208

Url: https://administrator.de/contentid/141208

Printed on: April 23, 2024 at 16:04 o'clock

Member: bastla
bastla Apr 22, 2010 at 06:24:28 (UTC)
Goto Top
Hallo StrikeForce und willkommen im Forum!

In einer (ungetesteten) Kürzestfassung würde ich das (falls die letzte Zeile nicht mit einer Zeilenschaltung endet) so versuchen:
Set objFSO = CreateObject("Scripting.FileSystemObject")  
Datei = "list.txt"  
Zusatz = "start WINWORD.EXE "  
T = objFSO.OpenTextFile(Datei).ReadAll
objFSO.CreateTextFile(Datei).Write Zusatz & Replace(T, vbCrLf, vbCrLf & Zusatz)
Grüße
bastla
Member: StrikeForce
StrikeForce Apr 22, 2010 at 06:33:17 (UTC)
Goto Top
Wahnisinn! Sehr schnelle Antwort bastla.

Dieser Code Funktioniert einwandfrei!

Ich danke Dir für diese sehr für diese Antwort!


Mit freundlichen Grüßen.