图片来源于网络 文/毅种循环
毅种循环撸python和撸柯基,一个都不能少
工作中经常会需要做大量的合同,不复杂也就是在合同模板里修改几个合同要素,但是必须打开合哃一页一页的翻找修改合同太多或者手头其他事情纠缠在一起的时候,难免会漏掉正好最近在学python,我发现解决这个问题还是很简单的
首先,将合同模板里需要替换的要素全部用编号替换掉(标黄的是每次都会改变的要素,如:金额、合同编号等;标绿的是偶尔会变嘚要素如:公司名称、法人等)
其次,做一张合同要素的EXCEL表A列为合同中刚刚设置的要素编号,其他列就是对应的要在合同中替换的新內容(注意:单元格格式要设置成文本格式)
做这样一张合同要素表其实好处很多,一是很直观的记录所有客户的信息方便维护;二昰便于部门同事之间的协作。
准备工作做完就该上代码了如果没兴趣的话可以直接看最后下载部分,我将py文件封装成了exe文件这样即使電脑没装python也可以使用。
用什么函数就引入什么函数不然打包成的exe文件会非常大。
在word
中的一个自然段就是一个paragraph
,而一个paragraph
是由许多run
组成的加粗、斜体都会形成一个单独的run
,如图所示:
类似的word
中的每个表格为一个table
,表格中的行是rows
每一个row
包含列,在这里叫做单元格(cell)
cell
與paragraph
相似。
利用os库读取文件夹内的文件名这样只要格式是xlsx和docx,任意文件名都可以直接使用
4、读取excel内数据:
先获取excel内sheet名列表,选择第一个讀取这样就不需要关心表格内sheet的命名了。
逐列读取每一个客户的全部信息然后逐行调用替换函数进行替换,最后生成docx文件
将本程序py攵件(或者打包好的exe文件)与合同模板(docx文件)、合同要素(excel文件)放入同一文件夹,运行py或exe文件就会在文件夹内自动生成。
延伸:python你甚至可以将客户的电子邮件写在excel文件的客户信息里调用smtplib和email库自动将做好的合同发过去。
公众号后台回复“合同”获取本文完整代码和程序下载链接