~ 上傳‧分享‧網賺 ~
~ 免費上傳空間‧請即申請 Freak Share ~
~ 進入後請點選左上角 注冊 ! ~
~ 声明事项 ~
如各位想把以下本文章转贴 , 请记得要注明出处.
本文章之内容为本人之经验所写, 绝无抄袭成份, 特此声明.
由于图片制作需时, 所以更新会比较慢.
存放图片的 SHARE A PIC SERVER 可能读取速度较慢, 请耐心等待.
嗯 , 之前说过这一回要废话小一点的 , 好 , 来吧 , 先在 INVOICE 页面加一个按钮 ( 怎样加 !? 自己想一想哦 ~ 之前有教过的 ~ 呵呵 ~ )
( Pic5_1 )
然后 , 加入下面的程序代码 ~
=====================================
Private Sub CommandButton1_Click()
Worksheets("Invoice").Activate
Worksheets("Invoice").Range("A2").Value = ""
a = Worksheets("Invoice").Range("A6").Value
b = Worksheets("Invoice").Range("A10").Value
Worksheets("Invoice").Range("A2").Value = Worksheets("Invoice").Range("A6").Value
c = b - a
For aa = 1 To c
ActiveSheet.PrintOut from:=1, To:=1, copies:=1
Worksheets("Invoice").Range("A2").Value = Worksheets("Invoice").Range("A2").Value + 1
Next aa
ActiveSheet.PrintOut from:=1, To:=1, copies:=1
End Sub
=====================================
Worksheets("Invoice").Activate 是买一个保险 , 确保现在使用中的是 Invoice 页面 .
然后 , 把储存格 A2 的数据清除 ( 当然 , 第一次用的时候是没有数据的 , 但是当这个档案是第二次使用的时候 , 这里就会有数据了 , 所以要清理一下 )
设定变量 A 为储存格 A6 的值 , 变量 B 为储存格 A10 的值 , 再把储存格 A2 的值改成 A6 的值 .
设定变量 C 的值为 变量 B 减 变量 A ( 这个是重复次数 , 因为每次的重复次数都不同 , 所以叫计算机自己找出来就好了 ~ )
ActiveSheet.PrintOut from:=1, To:=1, copies:=1 这一句是打印的控制 , FOR AA 和 NEXT AA 中间 , 第一个步骤就是打印一份 , 理由很简单 , 因为在开始重复之前 , 我们已经把储存格 A2 的值改了一次 , 所以 , 当 AA 是 1 的时候 , 在开始改善储存格 A2 的值之前 , 第一件事就要把文件打印一份出来 , 否则我们就会欠了一张 )
Worksheets("Invoice").Range("A2").Value + 1 这句就是要储存格 A2 的值再加 1 , 打个比喻 , 在储存格 A6 输入 10 , A10 输入 20 , 那么在程序执行的时候 , 第一件事就是把储存格 A2 的值换成储存格 A6 的值 , 也就是说现在储存格 A2 的值是 10 , 打印一份之后 , 就打储存格 A2 的值加 1 , 现在储存格 A2 的值是 11 , 再打印一次 , 之前有说过 , 变量 C 是以 变量 B 减去 变量 A 所得出来 , 现在 变量 C 的值就是 20 - 10 = 10 .
FOR AA 到 NEXT AA 中间的程序代码一共执行 10 次 , 看一下资料
变量 AA = 1 , NEXT AA 之前 , 储存格 A2 的值是 10 + 1 , NEXT AA , 现在储存格 A2 的值是 11
变量 AA = 2 , NEXT AA 之前 , 储存格 A2 的值是 11 + 1 , NEXT AA , 现在储存格 A2 的值是 12
变量 AA = 3 , NEXT AA 之前 , 储存格 A2 的值是 12 + 1 , NEXT AA , 现在储存格 A2 的值是 13
变量 AA = 4 , NEXT AA 之前 , 储存格 A2 的值是 13 + 1 , NEXT AA , 现在储存格 A2 的值是 14
变量 AA = 5 , NEXT AA 之前 , 储存格 A2 的值是 14 + 1 , NEXT AA , 现在储存格 A2 的值是 15
变量 AA = 6 , NEXT AA 之前 , 储存格 A2 的值是 15 + 1 , NEXT AA , 现在储存格 A2 的值是 16
变量 AA = 7 , NEXT AA 之前 , 储存格 A2 的值是 16 + 1 , NEXT AA , 现在储存格 A2 的值是 17
变量 AA = 8 , NEXT AA 之前 , 储存格 A2 的值是 17 + 1 , NEXT AA , 现在储存格 A2 的值是 18
变量 AA = 9 , NEXT AA 之前 , 储存格 A2 的值是 18 + 1 , NEXT AA , 现在储存格 A2 的值是 19
变量 AA = 10 , NEXT AA 之前 , 储存格 A2 的值是 19 + 1 , NEXT AA , 现在储存格 A2 的值是 20
问题出现了 , 当 AA = 10 , 储存格 A2 的值是 20 的时候 , 这份不用在 FOR AA 到 NEXT AA 中打印出来 , 所以为了要保证这份都会打印 , 所以程序代码的最后部份 , 又加多了一句 ActiveSheet.PrintOut from:=1, To:=1, copies:=1 , 让计算机都打印出来才完结程序 .
程序结束了 ~ 呵呵呵 ~ 松了一口气 ~ 只要在 SUMMARY 打好了用作记录的数据 , 就可以一次过打印我要的文件 ~ 哈 ~ 可以小睡一会 ~ 哈哈 ~
好 , 现在要提醒你一些使用这个设计会遇到的问题 :
第一 , 函数的设定不可以错 , 如果错了的话 ~ 嘿嘿嘿 ~ 打印出来的资料就错定了 ~ 我指的是 VLOOKUP 的从那里找到那里 ( $A$2:$S$65536 ) 和在这个范围来 , 找那一行 ( ,1,0 ) 的设定 , 千万不可以错哦 ~
第二 , 记得在测试打印之前 , 一定要把打印范围设定好 !! 否则打印出来的会包括了那些不需要的东西 .
第三 , 如果只需打印一个记录编号 ( REF# ) 的发票 ( INVOICE ) , 只需要把记录编号打在储存格 A2 之中 , 打个比喻 , 如果要打印的是记录编号 7 , 只需要在储存格 A2 打上 7 , 不要在 A6 和 A10 都打上 7 .
第四 , 这个程序已经有进化版 , 但是那个要迟一点再贴 , 很多东西都未准备好 XD
=====================================
好了 ~ 这次的分享又是时候要结束了 , 也是时候要去准备一下 , 下一次要分享的是什么东西 , 到底是这个程序的进化版本 , 还是我的其它跟乱来没分别的习作呢 ~ 让我先想一想吧 ~ 哈哈 ~ 记得要想我哦 ~ XD
官爷 ~~~ 记得留言哦 ~~~~ 写句 " 到此一游 " 也可以吧 ~ 哈哈 ~
0 留言:
發佈留言