使用Excel批量打印单行数据

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

有时候,我们需要把Excel表中的一行或连续几行数据以单页形式打印出来,如果是一行,则使用Vlookup函数调用还算是方便,可是需要连续打印若干行时,就比较麻烦了。

就像下面的这张表:

需要打印成这样的卡片(注意是打印白色部分,灰色部分不能打印):

怎么办呢?别着急,可以使用Excel设计模式,调用简单的VB

程序来完成。方法如下:

1、先建一张空表,设计好需要打印表格(要仔细进行页面设置,防止打印结果出错)

2、找一个合适的地方,在单元格里输入“打印起始序号”、“打印结束序号”和“正在打印序号”,作为右边单元格的说明文字,我是在F1、F2、F3单元格输入的。

3、选择说明文字右边的单元格为输入控制打印序号使用。

4、使用Vlookup函数为需要更换内容单元格赋值,Vlookup函数的第一个参数是g3单元格值,关于Vlookup使用可参见相关内容。

5、点击工具栏中的“设计模式”图标(就是在图片右侧中部由三角尺、直尺和铅笔组成的图标),进入设计模式。

6、点击“设计模式”图标边上的“命令按钮”,找一个合适的地方,建一个命令按钮。我建在了F4、G4单元格中,占了两个单元格。

7、右键点击命令按钮,在“属性”-“Caption”中改成“打印”,不改也可以,使用可能不便。

8、右键点击命令按钮,打开“查看代码”

9、在两行代码中间输入以下代码:

For i = Range("g1") To Range("g2")

Range("g3") = i

ActiveSheet.PrintOut From:=1, To:=1

Next

解释一下:第一行代码的意思是让i的值从g1单元格值开始循环,每循环一次,自动加一,直到等于g2单元格值为止。

第二行代码的意思让g3单元格的值等于i。

第四行代码的意思打印当前表,From:后面的值需要开始打印的第几页,To:后面的值是打印截止的第几页,因为我只需要打印第一页,所以两个都是1。另外如果每页需要打印若干份,就再加上Copies:=,因为我只需要打印一份,就可以省略这个参数。

第五行代码的意思是循环体结束

10、点击“设计模式”图标,退出设计模式。

相关文档
最新文档