Domanda

mi piacerebbe riempire i segnalibri MSWord da uno script python. Non riesco a trovare tali funzioni in win32com (pdf) o in PyUno (OpenOffice).

Qualcuno sa come utilizzare i segnalibri da Python?

È stato utile?

Soluzione

Non trovate le funzioni in win32com, li trovate nella documentazione per l'oggetto COM che si sta utilizzando. In questo caso, che sarebbe Word.Application.

Si può vedere qualche codice Python di esempio che utilizza questo oggetto COM per creare un segnalibro s.

Il più recente Word Object Reference Model si trova qui a MSDN

Altri suggerimenti

Guarda questo esempio per il vostro problema:

def addText(self, bookmark):
    self.wordApp.ActiveDocument.Bookmarks(bookmark).Select()
    self.wordApp.Selection.TypeText(self.some_text)

# from pandas data frame into word table 
def addTable(self, bookmark, df):
    self.wordApp.ActiveDocument.Bookmarks(bookmark).Select()
     table = location.Tables.Add(location, len(df) + 1, len(df.columns), 1, 1)
    table.AutoFormat(40)
    for i, item in enumerate(df):
        table.Cell(1, i + 1).Range.InsertAfter(item)
        table.Cell(1, i + 1).Range.ParagraphFormat.Alignment = 1
    sel.SelectRow()
    sel.BoldRun()
    table.Rows(1).HeadingFormat = True
    for c in range(2, len(df) + 2):
        for r in range(1, len(df.columns) + 1):
            table.Cell(c, r).Range.ParagraphFormat.Alignment = 1
            if pd.isnull(df.ix[c - 2][r - 1]):
                continue
            table.Cell(c, r).Range.InsertAfter(df.ix[c - 2, r - 1])
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top