excel批量生成word文档vba(vba根据模板批量生成表格)

通过数据模板和VBA的结合,批量生产CSV数据表需要通过逐渐增加的规则来命名批量数据表,数据表的内容由原始模板和提供的基础值根据实际需要自动生成。最大限度减少人工操作,实现全自动化!图中显示了批量生成的CSV数据表。

excel批量生成word文档vba(vba根据模板批量生成表格)

编辑数据模板,只要A2和B2单元格发生变化,其它相应的单元格就会通过引用公式来更新数据;

excel批量生成word文档vba(vba根据模板批量生成表格)

编辑好数据模板后,打开VBA编辑器,选择菜单“工具”——“宏”——“Visual Basic 编辑器”(快捷键为:Alt+F11);

excel批量生成word文档vba(vba根据模板批量生成表格)

插入用户窗体,在Visual Basic 编辑器菜单栏里选择“插入”——“用户窗体”,然后编辑用户窗体(该窗体作为模板基础数据录入部分),控件的具体使用稍微复杂一些,这里就不作介绍啦;

excel批量生成word文档vba(vba根据模板批量生成表格)

编辑窗体和控件代码,右击“UserForm1”——“查看代码”,在代码窗口录入相应的代码(由于这部分涉及的内容和步骤比较繁琐,只提供最终代码参考),代码如下:

复制代码

代码如下:

Private Sub CommandButton1_Click()

Dim n As Long

If TextBox1 <> “” And TextBox2 <> “” And TextBox3 <> “” And TextBox2 < TextBox3 Then

On Error Resume Next

MkDir CreateObject(“WScript.Shell”).SpecialFolders(“Desktop”) & “/” & TextBox1

For n = 1 To (TextBox3 – TextBox2 + 1) / 10

Sheets(1).Cells(2, 1).Value = TextBox1 & “-” & n

Sheets(1).Cells(2, 2).Value = TextBox2 + 10 * (n – 1)

ActiveWorkbook.SaveAs Filename:=CreateObject(“WScript.Shell”).SpecialFolders(“Desktop”) & “/” & TextBox1 & “/” & TextBox1 & “-” & n, FileFormat:=xlCSV, Password:=””, WriteResPassword:=””, ReadOnlyRecommended:=False, CreateBackup:=False

Next n

Unload Me

MsgBox “数据处理成功!”, vbOKOnly + 64, “提示”

Else

MsgBox “请核对数据信息!”, vbOKOnly + 64, “提示”

TextBox1.SetFocus

End If

End Sub

Private Sub CommandButton2_Click()

TextBox1 = “”

TextBox2 = “”

TextBox3 = “”

TextBox1.SetFocus

End Sub

Private Sub CommandButton3_Click()

Unload Me

End Sub

Private Sub TextBox1_Change()

Dim i%, Str$

With TextBox1

For i = 1 To Len(.Text)

Str = Mid(.Text, i, 1) ‘遍历文本框中输入的每一个字符。

Select Case Str

Case “a” To “z” ‘列出允许输入的字符。

Case “A” To “Z” ‘列出允许输入的字符。

Case Else

Beep

.Text = Replace(.Text, Str, “”) ‘如果输入的不是允许的字符,则使用Replace函数替换成空白。

End Select

Next

End With

End Sub

Private Sub TextBox2_Change()

Dim i%, Str$

With TextBox2

For i = 1 To Len(.Text)

Str = Mid(.Text, i, 1) ‘遍历文本框中输入的每一个字符。

Select Case Str

Case “0” To “9” ‘列出允许输入的字符。

Case Else

Beep

.Text = Replace(.Text, Str, “”) ‘如果输入的不是允许的字符,则使用Replace函数替换成空白。

End Select

Next

End With

End Sub

Private Sub TextBox3_Change()

Dim i%, Str$

With TextBox3

For i = 1 To Len(.Text)

Str = Mid(.Text, i, 1) ‘遍历文本框中输入的每一个字符。

Select Case Str

Case “0” To “9” ‘列出允许输入的字符。

Case Else

Beep

.Text = Replace(.Text, Str, “”) ‘如果输入的不是允许的字符,则使用Replace函数替换成空白。

End Select

Next

End With

End Sub

excel批量生成word文档vba(vba根据模板批量生成表格)

插入模块,该模块的作用是调出录入窗体(虽然窗体本身已经实现自动加载,但是不能实现二次自动加载),在Visual Basic 编辑器菜单栏里选择“插入”——“模块”,写入代码:

Sub 打开窗体()

UserForm1.Show

End Sub

模块代码录入完毕后,点击保存,然后关闭Visual Basic 编辑器;

excel批量生成word文档vba(vba根据模板批量生成表格)

回到数据表,调出录入窗体,选择菜单“工具”——“宏”——“宏”(快捷键为:Alt+F8)——选择“打开窗体”——“执行”;

excel批量生成word文档vba(vba根据模板批量生成表格)

按规定要求,录入基础数据,然后点击“确定”(一旦确定,VBA代码马上执行,将在桌面新建一个名为“Excel”的文件夹,在“Excel”文件夹里批量创建10个CSV工作簿,名称依次为Excel-1至Excel-10,内容也相应变化),确认“数据处理成功!”;

excel批量生成word文档vba(vba根据模板批量生成表格)

在桌面找到批量创建的CSV数据表,验证结果!

excel批量生成word文档vba(vba根据模板批量生成表格)

编辑代码的过程比较复杂,需要有足够的耐心,需要不断地去尝试和修改;

为了相关宏能正常运行,请把宏的安全性设置为最低级别。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 86345@qq.com 举报,一经查实,本站将立刻删除。
(0)
上一篇 2022-04-16 02:50:04
下一篇 2022-04-16 03:00:11

猜你喜欢

  • 婚姻三观是哪三观,如何判断三观一致

    很多人都说婚姻是爱情的坟墓,婚姻生活中的琐事会磨灭夫妻间的感情,但其实只要夫妻两人有相同的三观,一起努力经营婚姻,就可以婚姻美满,那么婚姻三观是哪三观呢?如何判断两个人三观一致? …

    2023-11-23
  • 家庭影院音响品牌推荐,家庭影院音响哪个好

    家庭影院音响哪个品牌好?其实主要看您的预算和需求。一套好的家庭影院音箱我认为要具备以下几个条件: 1、音质好:高中低音清晰分明、频率范围宽、低音震撼有弹性、高音通透、立体环绕感好。…

    2023-09-09
  • 亚马逊怎么开店_亚马逊开店需要什么条件

    很多卖家在亚马逊平台取得了很好的成绩,这让越来越多的新手伙伴也想加入亚马逊,那么亚马逊怎么入驻?需要公司具备哪些条件? 入驻亚马逊需要公司具备条件:  1、营业执照   商家必须是…

    2022-07-26
  • 照三证合一是哪三证_三证合一的特点

    办理三证合一 我们所说的“三证合一”,是指工商营业执照、组织机构代码证、税务登记证一体化,提高市场进入效率;在此基础上,进一步完善“一照一码”,通过“一次受理、并联审批、信息共享、…

    2022-10-28
  • 无线路由器改了密码怎么上不了网(无线网密码修改后电脑怎么上不了网了)

    1.打开开始——控制面板——网络和共享中心; 2、点击“管理无线网络”; 3、找到要连接的无线网络,并打开其属性; 4、修改系统记住的无线网络的密码; 5、也可以直接删除该无线网络…

    2022-04-26
  • 三七剪口与无剪口的区别_剪口三七和不剪口的区别

    三七剪口是位于三七主根与地径之间的部分,每年长出一截带有芽苞呈暗绿色,结节上还留有一凹窝,生长时间越长茎痕越多剪口的结节数也越多,因此有剪口的三七通常比较长、个头大坚实,无剪口的三…

    2022-08-15
  • 三国杀正式上线,三国杀游戏介绍

    由杭州游卡网络技术有限公司制作并发行的在线卡牌游戏《三国杀》已上线Steam,将于2021年11月正式发售。 游戏介绍 《三国杀》是一款拥有沉浸体验感的以三国时代为背景的线上卡牌游…

    2023-08-07
  • 猫是忠诚的动物吗_猫忠诚的表现

    很多人说猫咪高冷,不爱护主人,甚至有说法是:“狗是忠臣,猫是奸臣。”但其实猫咪也有很忠心的。猫咪也会护主吗?这5点恰恰是猫咪忠诚的表现。 1、猫咪会劝架 铲屎官有没有发现,每当你和…

    2023-05-23
  • Mac 鎬庝箞閲嶈绯荤粺(Mac绯荤粺鎬庝箞閲嶈)

    Mac如何重装系统?刚用过Mac电脑的用户大概都很头疼。你还带着电脑往别的地方跑吗?其实只要认真看完这篇文章,就可以在自己的电脑上重装新系统了。 第一步:1、首先在 MacBook…

    2022-05-04
  • 怎样查看两台电脑是否在同一个工作组

    计算机工作组是将不同的计算机按其功能以不同的名称分组,以便于管理和维护。 工作组有什么作用 打个比方:在校内网,有可能会超过成百上千台计算机。 如果这几百上千台电脑不分组的话。在电…

    2022-04-25

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注