用EXCEL实现批量打印

相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

用EXCEL实现批量打印《企业年金个人信息确认表》

周临军

近日,人力资源部门需要打印全行的《企业年金个人信息确认表》交每个员工签字,如果从清单中逐个将每人的信息复制粘贴到《企业年金个人信息确认表》,再打印出来,无疑工作量非常巨大,还容易出错。如何既准确提取数据,又能减少工作量呢?负责此项工作的雷姐向我求助。于是,我想到了利用EXCEL的VBA编程技术来达到这一目的。具体如下:

1、启用“宏”,在EXCEL的工具栏下打开“宏”(EXCEL2007版则需先点击左上角图标,找到EXCEL选项,勾选“在功能区显示‘开发工具’选项卡”,然后在开发工具栏打开“宏”),将“宏安全性”设为“中”。

2、点击“宏”,创建一个“宏”(宏名称可任意取,如“批量打印”),编辑这个“宏”,写下如下代码:

Sub 批量打印()

'

' Macro1 Macro

'

Sheets(2).Select ‘选定Sheets(2)表,此表为企业年金个人信息清单

qsh = Application.InputBox(prompt:="请输入起始号", Type:=1) ‘录入需要打印的起始编号

If qsh = False Then Exit Sub

jsh = Application.InputBox(prompt:="请输入结束号", Type:=1) ‘录入结束打印的终止编号

If jsh = False Then Exit Sub

Sheets(1).Select ‘选定Sheets(1)表,此表为企业年金个人信息确认表

For i = qsh + 1 To jsh + 1

Sheets(1).Range("b1") = Sheets(2).Range("a" & i).Value‘从Sheets(2)表的A列提取编号,填入Sheets(1)的B1单元格

Sheets(1).Range("b3") = Sheets(2).Range("s" & i).Value‘从Sheets(2)表的S列提取部门信息,填入Sheets(1)的B3单元格

Sheets(1).Range("d3") = Sheets(2).Range("c" & i).Value‘从Sheets(2)表的C列提取姓名信息,填入Sheets(1)的D3单元格

Sheets(1).Range("f3") = Sheets(2).Range("i" & i).Value‘从Sheets(2)表的I列提取性别信息,填入Sheets(1)的F3单元格

Sheets(1).Range("b4") = Sheets(2).Range("e" & i).Value‘从Sheets(2)表的E列提取证件号码信息,填入Sheets(1)的B4单元格

Sheets(1).Range("f4") = Sheets(2).Range("h" & i).Value‘从Sheets(2)表的H列提取出生日期信息,填入Sheets(1)的F4单元格

Sheets(1).Rang e("b5") = Sheets(2).Range("o" & i).Value‘从Sheets(2)表的O列提取参加工作日期信息,填入Sheets(1)的B5单元格

Sheets(1).Range("d5") = Sheets(2).Range("n" & i).Value‘从Sheets(2)表的N列提取入农行日期信息,填入Sheets(1)的D5单元格

Sheets(1).Range("f5") = Sheets(2).Range("f" & i).Value‘从Sheets(2)表的F列提取参加年金计划日期信息,填入Sheets(1)的F5单元格

Sheets(1).Range("b7") = Sheets(2).Range("u" & i).Value‘从Sheets(2)表的U列提取2008年补缴信息,填入Sheets(1)的B7单元格

Sheets(1).Range("c7") = Sheets(2).Range("v" & i).Value‘从Sheets(2)表的V列提取2009年补缴信息,填入Sheets(1)的C7单元格

Sheets(1).Range("d7") = Shee ts(2).Range("w" & i).Value‘从Sheets(2)表的W列提取2010年补缴信息,填入Sheets(1)的D7单元格

Sheets(1).Range("e7") = Sheets(2).Range("x" & i).Value‘从Sheets(2)表的X列提取2011年补缴信息,填入Sheets(1)的E7单元格

Sheets(1).Range("f7") = Sheets(2).Range("y" & i).Value‘从Sheets(2)表的Y列提取2008年补缴信息,填入Sheets(1)的F7单元格

ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True‘输出到打印机打印出来

Next i

'

End Sub

3、执行“宏”

点击“宏”后,运行这个“宏”就OK了。

4、表格格式如下:

Sheet1表

Sheet2表

第一行为表头,从第二行起为个人信息。

总结,EXCEL的VBA编程简单易学,掌握了能将大量的简单重复劳动由计算机自动完成,对提高工作效率大有帮助,以上方法不仅能实现《企业年金个人信息确认表》的打印,稍做修改,还能实现打印明信片、请柬等等。

相关文档
最新文档