2008年8月9日星期六

懒人计划 1 - 自动制作文件 PART 05 - 极速完成程序 , 开始懒吧 ~ 呵呵 ~ ( 简体 )

| |
~ 上傳‧分享‧網賺 ~
~ 免費上傳空間‧請即申請 Freak Share ~
~ 進入後請點選左上角 注冊 ! ~

~ 声明事项 ~

如各位想把以下本文章转贴 , 请记得要注明出处.

本文章之内容为本人之经验所写, 绝无抄袭成份, 特此声明.

由于图片制作需时, 所以更新会比较慢.

存放图片的 SHARE A PIC SERVER 可能读取速度较慢, 请耐心等待.

Picture



嗯 , 之前说过这一回要废话小一点的 , 好 , 来吧 , 先在 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 留言:

最新回應

Loading...

有事啟奏‧無事閒聊 ~ 哈 ~


米高積遜全復刻 哈利波特 Michael Jackson 妙麗 金曲獎 MJ 迈克尔杰克逊其实没有死!美国CBC电台已证实 哈利波特 hongkong168 蓮花河畔景苑 盧廣仲 鄧麗欣 不想放手New! 陳珊妮 方大同 巨乳排球 痞子英雄 23 東風 蕭閎仁 米高積遜全復刻 上海 倒塌 南王姐妹花 周杰倫 變形金剛2下載 michael jackson 去世 天文台 米高積遜 花拉科茜 天圖佈局 浪卡 耳廓狐 神探俏嬌娃 韶关旭日玩具厂 譚曉風 严妍 僧老少閒 地下天文台 金泰浩 百老匯 巨乳排球 陳振聰 柯柏文 aika 麥可傑克森