ImageVerifierCode 换一换
格式:DOCX , 页数:11 ,大小:254.24KB ,
资源ID:18524193      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/18524193.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(巧用VBA编程实现EXCEL电子表格的批量自动打印Word格式.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

巧用VBA编程实现EXCEL电子表格的批量自动打印Word格式.docx

1、由于 Office 2010 在默认情况下不显示“开发工具”选项卡,因此必须使用以下过程启用该选项卡:1)、在“文件”选项卡上,选择“选项”打开“Excel 选项”对话框。2)、单击该对话框左侧的“自定义功能区”。3)、在该对话框左侧的“从下列位置选择命令”下,选择“常用命令”。4)、在该对话框右侧的“自定义功能区”下,选择“主选项卡”,然后选中“开发工具”复选框。5)、单击“确定”。在 Excel 显示“开发工具”选项卡之后,注意选项卡上“Visual Basic”、“宏”和“宏安全性”按钮的位置。图 1. Excel 2010 中的“开发工具”选项卡 启用“开发工具”选项卡后,可以轻松找到

2、“Visual Basic”和“宏”按钮。2、安全问题单击“宏安全性”按钮可以指定哪些宏可以运行并需满足哪些条件。尽管未授权宏代码可能会严重损害计算机,但阻止您运行有帮助的宏的安全条件会严重妨碍您的工作效率。宏安全性是一个复杂而又涉及广泛的话题,您应研究并了解是否应使用 Excel 宏。在本文中,请注意,如果当您打开一个包含宏的工作簿时,在功能区和工作表之间出现“安全警告: 宏已被禁用”条,则可单击“启用内容”按钮来启用宏。此外,作为一种安全措施,您不能以默认的 Excel 文件格式 (.xlsx) 保存宏;而必须将宏保存在具有一个特殊扩展名 .xlsm 的文件中。 三、用VBA制作证件批量打

3、印的实例下面通过制作一张学员培训券来说明VBA在Excel中如何实现自动批量打印多张含有照片的培训券。1、准备工作1)、设计建立基本人员信息表在Excel表格中建立如下图2基本信息资料,具体建立过程在这里不再详述,我建立的表比较多,实际这里要用到的表格只有两张,所以其他的表格我就没有必要说了。图2学员基本信息表(学员花名册(计算机操作员)2)、设计建立打印证件或报表格式见图3图3培训券格式及内容2、使用VBA编程实现两个工作表链接打印操作1)、两张表格设置完成后,回到培训券(计算机操作员)工作表即sheet7,点击开发工具标签栏Visual basic,(或按ALT+F11快捷键),双击你所要

4、打印证件的工作项目,即可进入VBA编程状态输入代码。如图4所示图4代码窗口全部代码如下:宏功能:把光标处的人员信息填充到培训券(计算机操作员)工作表,并培训券(计算机操作员)用法:1.把光标定位到需要培训券(计算机操作员)的人员行的单元格 2.执行本宏。Sub subSetPringInfo()On Error Resume Next Dim oCell1, oCell2, 定义二变量Dim cfz2, cfz3, cfz4, cfz5, cfz6, cfz7, cfz8, cfz9Dim cfz10, cfz11, cfz12, cfz13, cfz14, cfz15, cfz16, cfz

5、17, cfz18 定义身份证取第二位数的内存变量为cfz2,取第三位数的内存变量为cfz3,以此类推到第十八位身份证内存变量为cfz18.(身份证取第一位的内存变量为oCell2,不需要重新定义)Dim FileType As String Dim iPXJH As Long 编号 Dim iRow As Long 正在培训券(计算机操作员)人员的行号 Dim strSheet As String 人员信息的工作表名称strSheet = 学员花名册(计算机操作员)人员基本信息在学员花名册(计算机操作员)工作表中,此处可以修改 检查是否在人员基本信息工作表中执行此功能,如果是,则显示不能在此

6、工作表中执行。 If ActiveSheet.Name strSheet Then不是在人员信息工作表中则弹出对话框。 MsgBox 请在人员基本信息工作表中执行此功能 Exit Sub End If Do 循环开始 iRow = Selection.Row 行号,从当前选定的行开始培训券(计算机操作员)读当前培训券(计算机操作员)行的左边第一单元格内容 :序号 Set oCell1 = Worksheets(strSheet).Cells(iRow, 11)序号是数字的行需要培训券(计算机操作员)即所对应培训券号行所在的单元格 iPXJH = Val(oCell1.Value) 培训券号 I

7、f iPXJH = 10070893 Then在培训券号内的数字 Set oCell2 = Worksheets().Cells(5, 8) oCell2.Value = iPXJH姓名 Set oCell1 = Worksheets(strSheet).Cells(iRow, 2).Cells(6, 8) oCell2.Value = oCell1.Value插入图片 FileType = InputBox(输入你的图片的后缀名, 输入图片格式jpg) Numb = oCell2.Value Sheet7.Select 改变当前的工作表为sheet7即培训券(计算机操作员) With Act

8、iveSheet .Pictures.Insert(D:pic & Numb & . FileType).Select 图片所在的路径为:pic,此路径可以根据具体情况更改 Set Target = Worksheets().Cells(5, 23)将图片插入到指定的单元格中,我设置的单元格为W5单元格,可以更改为自己所需的单元格位置 End With With Selection .Top = Cells(5, 23).Top + 4 插入图片的上方位置为W5的位置向下4个单位,数字4可以更改 .Left = Cells(5, 23).Left + 5 插入图片的上方位置为W5的位置向下4个

9、单位,数字4可以更改 .Width = Cells(5, 23).Width + 110 插入图片的宽度为W5单元格的宽度加110个单位的宽度为图片的整个宽度,110可以更改 .Height = Cells(5, 23).Height + 110 插入图片的高度为W5单元格的高度加110个单位的高度为图片的整个高度,110可以更改户籍 Set oCell1 = Worksheets(strSheet).Cells(iRow, 9).Cells(7, 6)身份证号 Set oCell1 = Worksheets(strSheet).Cells(iRow, 8).Cells(9, 3) 指定身份证

10、第一位数字所在的位置,以下类推。 Set cfz2 = Worksheets().Cells(9, 4) Set cfz3 = Worksheets().Cells(9, 5) Set cfz4 = Worksheets().Cells(9, 6) Set cfz5 = Worksheets().Cells(9, 7) Set cfz6 = Worksheets().Cells(9, 8) Set cfz7 = Worksheets().Cells(9, 9) Set cfz8 = Worksheets().Cells(9, 10) Set cfz9 = Worksheets().Cells(

11、9, 11) Set cfz10 = Worksheets().Cells(9, 12) Set cfz11 = Worksheets().Cells(9, 13) Set cfz12 = Worksheets().Cells(9, 14) Set cfz13 = Worksheets().Cells(9, 15) Set cfz14 = Worksheets().Cells(9, 16) Set cfz15 = Worksheets().Cells(9, 17) Set cfz16 = Worksheets().Cells(9, 18) Set cfz17 = Worksheets().Ce

12、lls(9, 19) Set cfz18 = Worksheets().Cells(9, 20) oCell2.Value = Mid(oCell1.Value), 1, 1)给身份证第一位数字赋具体的值,以此类推。 cfz2.Value = Mid(oCell1.Value), 2, 1) cfz3.Value = Mid(oCell1.Value), 3, 1) cfz4.Value = Mid(oCell1.Value), 4, 1) cfz5.Value = Mid(oCell1.Value), 5, 1) cfz6.Value = Mid(oCell1.Value), 6, 1) c

13、fz7.Value = Mid(oCell1.Value), 7, 1) cfz8.Value = Mid(oCell1.Value), 8, 1) cfz9.Value = Mid(oCell1.Value), 9, 1) cfz10.Value = Mid(oCell1.Value), 10, 1) cfz11.Value = Mid(oCell1.Value), 11, 1) cfz12.Value = Mid(oCell1.Value), 12, 1) cfz13.Value = Mid(oCell1.Value), 13, 1) cfz14.Value = Mid(oCell1.Va

14、lue), 14, 1) cfz15.Value = Mid(oCell1.Value), 15, 1) cfz16.Value = Mid(oCell1.Value), 16, 1) cfz17.Value = Mid(oCell1.Value), 17, 1) cfz18.Value = Mid(oCell1.Value), 18, 1)工种 Set oCell1 = Worksheets(strSheet).Cells(iRow, 7).Cells(11, 11) 培训券(计算机操作员)证件,A1:E7 为定义页面的培训券(计算机操作员)范围 Worksheets().Range(AF2

15、5).PrintOut清空sheet7中相片单元格中的照片为了避免照片打印重复 Dim x As Integer For x = 1 To Sheet7.Shapes.Count If Sheet7.Shapes(x).TopLeftCell.Address = $W$5 Then 绝对引用单元格W5是我设置的相片所在的单元格 Sheet7.Shapes(x).Delete 删除图片单元格的内容 Next x Sheet1.Activate 激活当前的工作表为sheet1即学员花名册(计算机操作员)打完一个证件后,询问是否培训券(计算机操作员)下一个。 If MsgBox(继续打印下一人员?,

16、 vbDefaultButton1 + vbYesNo) vbYes Then中断培训券(计算机操作员)打印为培训券(计算机操作员)下一人员做准备 Set oCell1 = Worksheets(strSheet).Cells(iRow + 1, 1) oCell1.Activate Sheet1.Select 恢复当前的工作表为sheet1即学员花名册(计算机操作员) Else当前行不是人员信息,不能打印 LoopEnd Sub2)、实验结果完成后按ALT+F11进入代码窗口,鼠标点击(或按F5)执行宏操作会弹出宏对话框,如图5所示点击“运行”按钮。注意:在运行前要选择工作表学员花名册(计算

17、机操作员)即sheet1,并且选择A4单元格即序号为1的单元格,不然会出现提示:“请在人员基本信息工作表中执行此功能”,还要注意的是:在“培训券(计算机操作员)”工作表中,显示比例改必须为100%,否则,打印出来的图片不会在图片框中。这样我们可以按照要求打印自己所要打印的证件了。手工几天的工作不到半天就完成了,提高了工作效率,同时也减少了很多的错误。此代码在Windows XP操作系统、Microsoft Office Excel 2010下编写,并顺利运行通过。四、结束语 在Excel制作电子表格过程中,充分利用VBA这一工具,提升Excel文件的技术含量,可使电子表格自动化功能得到增强,使电子表格更完善,更具有灵活多样性。执行打印后的效果为下图6所示图6执行代码后打印的效果图

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1