将Excel数据写入Word文档进行套打

近来在ERP人事模块的实施过程中,遇到一个与word集成的应用。应聘者最终通过层层面试,人事专员需要打印一份word版本的Offer(入职通知书)出来。这时候就需要将Excel中的应聘数据导入到Word文档中,比如说:应聘人员姓名、应报道时间等动态信息。而入职通知书的word文档已经有现成的了。所以本应用就是需要将如上的动态数据,导入到word文档中的指定位置。
实现的效果如下:
点击,发送offer按钮,将姓名、应报道日期写入word文档中。如下图:

160407936.png

160414650.png

生成一份word文档,并将信息写入word中:

在Excel平台中的实现步骤如下:
1、点击发送offer按钮,将word文档以附件形式获取出来(word文档中数据位置应先指定,如:数据001、数据002)
2、将word文档另存为本地
3、将本表的数据,填入到word文档中的指定位置。

附件中的案例,主要代码如下:
PrivateSubCommandButton1_Click()
Dim当前路径,导出文件名,导出路径文件名,i,j
DimStr1,Str2
当前路径=ThisWorkbook.Path
导出文件名="社保手续通知书"
FileCopy当前路径&"\社保手续通知书(模版).doc",当前路径&"\"&导出文件名&".doc"
导出路径文件名=当前路径&"\"&导出文件名&".doc"
SetWord对象=CreateObject("word.application")
WithWord对象
.Documents.Open导出路径文件名
.Visible=True
判断=0
.Selection.EndKeyUnit:=wdStory'光标置于文件尾

Forj=1To4
Str1="数据"&Format(j,"000")
Str2=Sheets("社保准备信息").Cells(i,j+1)
WithWord对象.ActiveWindow.Selection.Find
.Text=Str1
.Replacement.Text=Str2
.Forward=True
.Wrap=1
.ExecuteReplace:=2
EndWith
Nextj
EndWith
Word对象.Visible=True
SetWord对象=Nothing

EndSub

其中有用到,excel控制word的vba代码,可以上本人的多贝公开课<ExcelVBA在设计大型管理系统中的应用>-word集成案例中找到答案。公开课地址:http://www.duobei.com/course/6701617857

也欢迎加入ERP群交流、下载附件:

160507376.png

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章