当前位置: 首页 > 后端技术 > Python

RPA--Word表格填写资料(XX证券案例)

时间:2023-03-25 22:49:29 Python

1.要求:如下图,文件为docx格式,数据需要从Excel表格中取出,填写到相应的单元格中上图中:2、分析:Excel取数据,这里我们可以轻松获取。问题是,我们如何将检索到的数据填入到Word表格中。因为Word中的表格不同于Excel,在Excel中,我们可以任意填写相应的单元格。但是在Word中,我们不能这么快实现。三、实现方法:思路如下:1、如果Word中的表格不复杂,格式不多,比如:logo,客户对格式要求不是太高。可以参考WriteaWordformusingcode,直接写Word表格,填写需要填写的数据。2.如果Word中的表格比较复杂,有自定义格式,而且格式不允许被改变。上述方法不适用。话不多说,代码如下:importwin32com.clientimportwin32comword=win32com.client.Dispatch('Word.Application')word.Visible=0#后台运行word.DisplayAlerts=0wordpath=r'\\Mac\Home\Desktop\IFC\附录3:证券开户申请表(印刷版).docx'wc=win32com.client.constants#获取文本对象doc=word.Documents.Open(wordpath)#获取所有数据对象word.Selection.Find.ClearFormatting()word.Selection.Find.Replacement.ClearFormatting()#查找特征值替换word.Selection.Find.Execute('Template1',False,False,False,False,False,True,1,True,'上海易赛奇',2)word.Selection.Find.Execute('模板2',False,False,False,False,False,True,1,True,'123456',2)word.Selection.Find.Execute('Template3',False,False,False,False,False,True,1,True,'test',2)doc.Save()word.Documents.Close()word.Quit()如下图:on在图片框中,我们在要填写的单元格中写上“模板”二字,这样t我们可以将替换后的值设置为参数,这样就可以在不影响Word格式的情况下替换预设的固定字段。最终实现如下:所以,下面只需要在Word模板中设置固定字段,在代码中实现替换,生成需要的文档即可。免费下载试用:https://support.i-search.com.cn/