PythonのでMS Wordの(またはオープンオフィス)のブックマークを更新

StackOverflow https://stackoverflow.com/questions/1674956

質問

私は、PythonスクリプトからMSWordのブックマークを埋めるしたいと思います。 私は(OpenOfficeの)win32com(MSWordの)またはPyUnoでこのような機能を見つけることができません。

誰もがPythonのからブックマークを使用する方法を知っていますか?

役に立ちましたか?

解決

あなたは、あなたが使用しているCOMオブジェクトのドキュメントにそれらを見つける、win32com内の関数を見つけることができません。 Word.Applicationだろう。この場合。

あなたはこのCOMオブジェクトを使用していますいくつかのサンプルPythonコードを見ることができますブックマークする Sを作成します。

最新の Wordオブジェクトモデルリファレンスは、MSDN

他のヒント

あなたの問題のために、この例を見てみます:

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])
scroll top