本帖解决的是将Excel里的数据,写入Word表格。
-
涉及到的知识点:
- 读Excel,并转化为列表形式;
- 写Word表格
-
注意点:
- 读Excel中,遇到空值,读出来为 nan,这里需要改变一下,遇到值为 nan 的,需转化为 “ ”;
-
excel 中部分数据如下图:
-
实现结果,Word中部分呈现如下:
代码如下:
from docx import Document
import pandas as pd
def excel_word_table(file_path,save_path):
df1 = pd.read_excel(io=file_path,header=None)
df2 = df1.values.tolist()
df1.columns=list(df1.columns)
df1.index=list(df1.index)
d=Document()
tb=d.add_table(rows=len(df1.index)-1,cols=len(df1.columns))
tb.add_row()
for row in range(0,len(df1.index)):
for col in range(len(df1.columns)):
tb.cell(row, col).text = str(df2[row][col])
tb.style="Table Grid"
tb.autofit=True
print("已完成Excel数据填写至Word表格")
d.save(save_path)