Seite 1 von 1

In Word schreiben

Verfasst: Dienstag 31. August 2004, 14:15
von Leonidas
Hallo!
ich habe folgende Frage: wie kann ich mit Python (mit pywin32/win32all) in ein laufendes Word (2003) in das aktuell geöffnete Dokument, beim Cursor irgendeinen Text reinschrieben?

grüße,
Leonidas

Verfasst: Samstag 4. September 2004, 13:34
von Leonidas
Okay, ich weis es jetzt:

Code: Alles auswählen

import win32com.client
word = win32com.client.Dispatch('Word.Application')
sel = word.Selection
sel.TypeText('Text')

Verfasst: Sonntag 5. September 2004, 10:06
von DER Olf
hi leonidas,

paste doch, oder schreib nochmal mit ein paar erklärungen zu den snippets.
ist dann für andere (neue?) leichter zu finden.

mfg Olf

Verfasst: Montag 6. September 2004, 08:38
von Leonidas
Okay, dann werde ich es jetzt mal erklären:
Ich wollte in das aktuelle Word Dokument an der Cursorposition mit Python reinschreiben. Nun, da Word ein COM Server ist brauche ich ein COM Client modul. Also wird pywin32/win32all nötig sein.

Code: Alles auswählen

import win32com.client
word = win32com.client.Dispatch('Word.Application')
sel = word.Selection
sel.TypeText('Text')
In der ersten Zeile wird die COM Client Library importiert.
Dann stelle ich eine Verbindung zu Word her.
Als nächstes erstelle ich die Variabel sel die eigentlich die Cursorposition in Word (global, also nicht in den einzelnen Dokumenten, sondern in dem aktuellen Dokument) darstellt. Zuletzt benutze ich die TypeText methode des COM Objects, das den Text schreibt.
Nützlich hat sich die MSDN erwiesen, dort ist es aber für VBS/VBA.

grüße,
Leonidas