VBA批量生成word(如offer)

Excel里面有客户的名字、身份证、性别、手机号,通过批量更新offer的这4个变量批量生成offer。

VBA代码如下:
Sub CreateWord()
Dim mypath, Newname, i, XB, wApp
mypath = ThisWorkbook.Path & “\”
For i = 2 To [a1048576].End(xlUp).Row
Newname = “offer-” & Range(“a” & i) & “.docx” ‘给新生成的表起个名称
FileCopy mypath & “offer.docx”, mypath & Newname ‘将模板复制并重命名
Set wApp = CreateObject(“word.application”)
With wApp
.Visible = False
.Documents.Open mypath & Newname ‘打开我们复制的新文件进行更改
Do While .Selection.Find.Execute(“名字”) ‘寻找客户这个关键词,将其用表格中的姓名来代替
.Selection.Text = Range(“A” & i).Text
.Selection.HomeKey Unit:=6
Loop

Do While .Selection.Find.Execute(“身份证号”)
.Selection.Text = Range(“B” & i).Text ‘替换字符串
.Selection.HomeKey Unit:=6
Loop
Do While .Selection.Find.Execute(“男女”)
.Selection.Text = Range(“C” & i).Text ‘替换字符串
.Selection.HomeKey Unit:=6
Loop
Do While .Selection.Find.Execute(“手机号”)
.Selection.Text = Range(“D” & i).Text ‘替换字符串
.Selection.HomeKey Unit:=6
Loop

.Documents.Save
.Quit

End With
Next
Set wApp = Nothing

End Sub

  • 4
    点赞
  • 43
    收藏
    觉得还不错? 一键收藏
  • 7
    评论
Excel VBA可以通过自动化Word应用程序来批量生成Word文档。具体的实现过程如下: 1. 在Excel中,首先需要创建一个具有必要数据的数据源。可以将数据存储在Excel表格中,也可以使用其他文件和数据源。 2. 在VBA中,使用创建Word应用程序对象的代码来创建Word应用程序实例。如下所示: Dim wordApp As Object Set wordApp = CreateObject(“Word.Application”) 3. 然后,使用Word应用程序对象中的不同方法和属性来创建Word文档。如下示例代码: Dim wordDoc As Object Set wordDoc = wordApp.Documents.Add 4. 确定或使用数据源的内容来更新Word文档。如下代码示例: Dim table As Object Set table = wordDoc.Tables.Add(Range:=wordDoc.Range(0, 0), NumColumns:=3, NumRows:=5) With table '设置表头 .Cell(1, 1).Range.Text = "姓名" .Cell(1, 2).Range.Text = "学号" .Cell(1, 3).Range.Text = "分数" '设置数据 .Cell(2, 1).Range.Text = "张三" .Cell(2, 2).Range.Text = "20200901" .Cell(2, 3).Range.Text = "88" .... End With 5. 将文件保存到指定的文件夹或位置。如下所示: wordDoc.SaveAs (“C:\Users\myfolder\file1.docx”) 6. 完成后,关闭Word应用程序实例并释放所有对象,以避免内存泄漏。如下所示: wordApp.Quit Set wordDoc = Nothing Set wordApp = Nothing 在以上的示例代码中,可以根据需要进行修改,以满足所需的文档样式和内容。通过Excel VBA生成Word文档,可以实现高效、快速、准确地批量生成文档。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值