最近遇到一个需求。
1.需要对比两个excel文档,将对比结果输出
2.将其中一个表格中内容整理后输出到word中
手工实现这些需求也是可以的,但是如果excel中行数比较多,那么就比较繁琐了。所以我们想到用python实现。
如下代码所示:
import openpyxl from docx import Document from docx.shared import Inches document = Document() document.add_heading('审计日志描述汇总', 0) # 打开excel文件,获取工作簿对象 # oldExcel = openpyxl.load_workbook('old.xlsx') newExcel=openpyxl.load_workbook('new.xlsx') newSheet = newExcel.active new_sjrz_dic={} # old_sjrz_dict={} for row in newSheet.rows: if len(row)>1: new_sjrz_dic[row[1].value]=row[0].value title=row[1].value try: document.add_heading(title[:title.index('[')], level=2) document.add_paragraph('中文描述', style='List Bullet') document.add_paragraph(row[1].value) document.add_paragraph('英文描述', style='List Bullet') document.add_paragraph(row[0].value) except : pass # print(newSheet['B2'].value) # 获取指定的sheet # sheet3 = oldExcel['审计日志'] # for row in sheet3.rows: # if len(row)>1: # old_sjrz_dict[row[6].value]=row[8].value # 比较两个表单中差异 并将差异输出 # for k,v in new_sjrz_dic.items(): # if k not in old_sjrz_dict: # print(k+' '+v) document.save('审计日志描述汇总.docx')
发表回复