Excel综合应用(1): 批量打印格式化后的表格

工作中,有如下格式的表格,需要打印出n个员工的。员工详细数据在另外一张工作表中,那么本案例将结合函数与VBA展示综合应用的优势。

表格样式:

v2-7b3274228f6f6859029e344421cb6126_b.jpg

员工详细数据:

v2-8370583ff409fc0581227b17d8d968d3_b.jpg

解决思路:

第1步

在"表格样式"工作表中插入ActiveX控件:下拉列表框,数据源定位于"员工详细数据"工作表中的B列序列号,当人工选择下拉列表项时,选中的"序列号"值存在A2单元格,为防止误删除,将A列隐藏;

v2-9d7830965b1604777391a5a758052c73_b.jpg

因为A2单元格得到的"序列号"值是文本型的,但是数据表中的"序列号"值是数值型的,所以在A3单元格用VALUE函数做了置换:

v2-247b6c92adb09c88e93a6ed844c18a68_b.jpg


第2步

"表格样式"工作表中需要填入数据工作表中数据的地方,使用VLOOKUP函数,查找"序列号"对应的值,例如"表格样式"工作表中的”姓名 "=VLOOKUP($A$3,data,2)","性别"单元格对应的函数公式是="VLOOKUP($A$3,data,3)"。

v2-e4567add2bf1fc580a751dac7b5a50f0_b.jpg

"data"是已定义好的名称,引用的是"员工详细数据"工作表中数据区域,第一列是序列号:

v2-516b9bc04a3e478ead928924a1da0abd_b.jpg

第3步

按ALT+F11快捷键进入VBA代码编辑窗口,新建一个模块,建立一个过程,命名为“打印”,指定要打印的开始-终止的"序列号",例如语句"For i = 1005 To 1006",可以根据需要随意指定员工"序列号"。

v2-54cb171a4101a2914155f8997aa91626_b.jpg

按F5执行"打印"宏,即可循环打印指定的"序列号"内的表格。

或者单击菜单项"开发工具"-"宏",也可执行该宏。

v2-bee522c9b551463a06ce5f8114ae7c14_b.jpg

欲获取本案例的EXCEL文件,请关注公众号:OFFICE之门,发送”批量打印“即可。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值