2017-01-29 17 views
-2

私は何千もの行を持つ優れたドキュメントを手に入れました。各行は人の記録を表しています。 Pythonを使用して各行を抽出し、その情報をMS Wordページに書き込むにはどうすればよいですか?Python:各Excel行を独自のmsワードページとして印刷

私の目標は、各ページの擬似物語を含むドキュメントを作成することです。

+2

木を捨てるのに適していますか? – zBeeble

答えて

0

Excelファイルの内容をPandas Data Frameとして抽出し、そのデータフレームをWord文書にエクスポートして表にすることができます。これは目的を達成するための一般的な構文です

import pandas as pd 
xls_file = pd.ExcelFile('../data/example.xls') 
df = xls_file.parse('Sheet1') 

#Needs PyWin32 
wordApp = win32.gencache.EnsureDispatch('Word.Application') 
wordApp.Visible = False 
doc = wordApp.Documents.Open(os.getcwd()+'\\template.docx') 
rng = doc.Bookmarks("PUTTABLEHERE").Range 

# creating Table 
# add one more row in table at word because you want to add column names as header 
Table=rng.Tables.Add(rng,NumRows=df.shape[0]+1,NumColumns=df.shape[1]) 

for col in range(df.shape[1]):   
# Writing column names 
    Table.Cell(1,col+1).Range.Text=str(df.columns[col]) 
    for row in range(df.shape[0]): 
    # writing each value of data frame 
     Table.Cell(row+1+1,col+1).Range.Text=str(df.iloc[row,col]) 

関連する問題