一、前言
最近同事遇到一个棘手的事情,要把有1000多行的word表格,转成excel表格,采取直接复制的方式,word里面表格的内容有很多的回车,导致表格复制到excel后,word里一个单元格在excel里变成了多个单元格。于是就想用Python写个小程序帮他解决了这个问题。
二、程序展示
1、打开word文件,创建一个excel文件
from docx import Document
import openpyxl
from datetime import datetimedoc = Document('F:/python_study/表格/table10.docx')
wb = openpyxl.Workbook()
ws = wb.active
ws.title = 'pop'
2、将word内容读出,存入excel中
# 遍历文档中的所有表格
for table in doc.tables:for row in table.rows:# 遍历每行的所有单元格cells = [cell.text for cell in row.cells]ws.append(cells)# print(cells)
3、为存储的excel文件命名
这个地方通过获取系统时间,来作为excel文件保存的名字,主要是在测试时遇到多次文件名重复导致程序报错,就想了这个办法来解决。
def now_as_str():now = datetime.now().date()ymd = str(now.strftime("%Y%m%d"))tnow = datetime.now().time()hms = str(tnow.strftime("%H%M%S"))ffday = ymd+hmsreturn ffday
fday = now_as_str()
print(fday)
wb.save(f'F:\\Python_study\\表格\\{fday}.xlsx')