ten13 Geschrieben 23. August 2006 Geschrieben 23. August 2006 So servus, hab folgendes Problem : Ich will mit TCL auf ein Word File zugreifen, es öffnen, was reinschreiben und es wieder schließen... Öffnen.. kein Problem, Speichern und schließen... Kein Problem... aber ich hab keinen Plan wie ich in das File reinschreiben kann... Arbeite mit Hilfe von tcom! Hier mal n Stück Quellcode : #tcom packet wird benötigt load tcom.dll proc worddrucken {} { set wordapplication [::tcom::ref createobject "Word.Application"] $wordapplication Visible 0 set docs [$wordapplication Documents] set doc [$docs Open "c:/StammNummernSuche.doc" [::tcom::na] [expr 0]] #hier muss Text rein : D # # $docs Save #doc PrintOut [expr 1] [::tcom::na] $wordapplication Quit } Hoffe mir kann jmd. helfen. Vielen Dank im Voraus. Ten13 Zitieren
grueni Geschrieben 23. August 2006 Geschrieben 23. August 2006 Suchst du sowas? puts [-nonewline] [fileId] string Schreibt einen String in den Standardausgabekanal oder bei Angabe der fileId in die entsprechende Datei. Beispiel: # Writing set filename test.txt set fh [open $filename "w"] puts $fh "Holger Schmidt" puts $fh "Astrid Meier" puts $fh "Karl Mueller" close $fh Hier ist noch ein ganz nettes Tutorial, vielleicht hilft dir das auch weiter: http://www.ti.uni-bielefeld.de/downloads/WS0405/tcltk/TclTkKurs2.pdf Zitieren
ten13 Geschrieben 23. August 2006 Autor Geschrieben 23. August 2006 Danke erstmal für die Antwort, ist aber leider nicht das was ich suche. So in eine Txt- File zu schreiben wär kein Problem aber ich muss direkt aber diese tcom Schnittstelle in Word schreiben. mit Excel geht das so : #tcom packet wird benötigt load tcom.dll set application [::tcom::ref createobject Excel.Application] $application Visible 0 set workbooks [$application Workbooks] set workbook [$workbooks Open "c:/StammNummernSuche.xls" [::tcom::na] [expr 0]] set worksheets [$workbook Worksheets] set worksheet [$worksheets Item [expr 1]] set cells [$worksheet Cells] $cells Item 4 B "VERTRAULICH" $cells Item 5 B "$anrede" $cells Item 6 B "$vorname $nachname" $cells Item 7 B "$abteilung" $cells Item 8 B "" $workbook Save $application Quit Nur mit Word bekomme ich es nicht hin... Zitieren
Amstelchen Geschrieben 23. August 2006 Geschrieben 23. August 2006 @grueni: er will das ja über die automatisierungsschnittstelle (sprich, COM) machen und nicht in ein plaintext file schreiben. @ten13: versuchs mal mit "$doc text", gefolgt vom gewünschten inhalt. Insert text with formatting $word -with selection.font : name "Courier New" $word -with selection.font : size 10.0 $doc -with content : text "Text in Courier 10 point \r" ;# \r Return ??? ist zwar die implementierung mit optcl und nicht tcom, sollte aber abgesehen von ähnlicher syntax auf die gleiche COM-hierarchie zugreifen können. s'Amstel Zitieren
ten13 Geschrieben 24. August 2006 Autor Geschrieben 24. August 2006 Hi danke auch Dir, hab diese Seite auch schon im Netz gefunden, hab so ziehmlich alle seiten die google ausgespuckt hat gelsen aber keine konnte mir helfen... Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.