I have some code from several years ago where I access Word documents that are configured to perform mail merges i.e. I add the data from a python program and then print the .doc file. Unfortunately I didn't document it very well (presumably I understood it at the time? It certainly worked! :-)). So here are some clues from that code (it was part of a lane management system I wrote for my kids swimming club):
from win32com.client import constants, Dispatch from win32com.gen_py.word import * wd = Dispatch("Word.Application") for l in range(1, int(self['lanes']) + 1): # The Word documents will be in the same directory as the code. lane_name = '%s\Lane%s.doc' % (os.getcwd(), l) doc = wd.Documents.Open(lane_name) event_range = range(int(self.component('StartEvent').getvalue()), self.num_events, 3) # Number of events per page doc.MailMerge.Destination = win32com.gen_py.word.constants.wdSendToNewDocument doc.MailMerge.MailAsAttachment = False doc.MailMerge.MailAddressFieldName = "" doc.MailMerge.MailSubject = "" doc.MailMerge.SuppressBlankLines = True for event in event_range: doc.MailMerge.DataSource.FirstRecord = event doc.MailMerge.DataSource.LastRecord = event + 2 doc.MailMerge.Execute(Pause = True) wd.ActiveDocument.PrintOut() wd.ActiveDocument.Close(SaveChanges = False) # Now close the mailmerge template doc.Close(SaveChanges = False) I most likely copied this code from somewhere on the Internet - I would love to give credit, but have long since lost the information... Hope this helps, Peter On Sat, Jul 18, 2009 at 12:13 AM, Guilherme Polo <ggp...@gmail.com> wrote: > On Fri, Jul 17, 2009 at 9:15 AM, The Helmbolds<hel...@yahoo.com> wrote: > > I managed to open a plain *.txt file in Microsoft Notepad from TkInter by > > using Python's "spawnv" command in its "os" module. > > > > That does not seem to work for opening a *.txt or a *.doc file in > Microsoft > > Word. > > > > How do I open a *.doc file in Microsoft Word from TkInter? Or is this so > > complicated it's not worth it? > > > > What happens if you try os.system('start myfile.doc') ? > > This is not related to Tkinter, so, if you want to extend the initial > question and include communication with ms word or anything related, I > would suggest to post this to an appropriate list. > > Regards, > > > > -- > -- Guilherme H. Polo Goncalves > _______________________________________________ > Tkinter-discuss mailing list > Tkinter-discuss@python.org > http://mail.python.org/mailman/listinfo/tkinter-discuss >
_______________________________________________ Tkinter-discuss mailing list Tkinter-discuss@python.org http://mail.python.org/mailman/listinfo/tkinter-discuss