~ 上傳‧分享‧網賺 ~
~ 免費上傳空間‧請即申請 Freak Share ~
~ 進入後請點選左上角 注冊 ! ~
~ 聲明事項 ~
如各位想把以下本文章轉貼 , 請記得要注明出處.
本文章之內容為本人之經驗所寫, 絕無抄襲成份, 特此聲明.
由於圖片製作需時, 所以更新會比較慢.
存放圖片的 SHARE A PIC SERVER 可能讀取速度較慢, 請耐心等待.
緊接住上一編文章 ~ 我們繼續寫程式 ~
現在我們已經得到了兩個很有用的東西 ( LastRec 和 LastRec2 ) , 現在我們要利用這兩個東西來做要做的事 , 首先 , 加入一些程式碼 ~
=====================================
For PrintLoop = LastRec2 + 1 To LastRec
If Worksheets("Summary").Range("H" & PrintLoop).Value = "" And Worksheets("Summary").Range("I" & PrintLoop).Value = "" Then Worksheets("Invoice").Range("A2").Value = Worksheets("Summary").Range("A" & PrintLoop).Value
Next PrintLoop
=====================================
PrintLoop 這個變數的值 , 是由 LastRec 和 LastRec2 組成的 , 每次的 LastRec 和 LastRec2 都會記錄到不同的東西嘛 ~ 所以全部都用變數來處理會方便很多 ~ 這是我的個人經驗 , 如果你不信的話 , 大可以試試把 PrintLoop 這個變數的值設定為 2 到 LastRec , 三兩個記錄還好 , 三兩百個就死定了 ~ 哈哈 ~ 想一想就知道了嘛 ~ 這是一個不折不扣的事實呢 ~
在懶人計劃1 中 , 我們在 invoice 頁面設定了很多很多的 vloopup 函數式 , 如果按照上面的幾句程式碼來看 , invoice 頁面中儲存格 A2 的值就會跟隨記錄位置而改變 .
什麼 ? 沒看懂上面的程式碼 ?? 不是吧 ~ 好 , 我來解釋一次 ~
如果 SUMMARY 頁面中的儲存格 H?? 和 I?? 的值都是空白 , 那麼 , INVOICE 頁面儲存格 A2 的值就改變成 SUMMARY 頁面 A?? 的值 . 懂了吧 ~ 就是這麼簡單了 ~
好 ~ 現在在編程畫面一下一下的按下 F8 , 看看 INVOICE 頁面的儲存格 A2 有沒有根據我們的要求來改變 ~
( Pic6_1 )
嘿嘿嘿 ~ 成功了 ~ 哈哈哈哈哈哈 ~~~~~
等等哦 ~ 先別發瘋了 ~ 我們還有一個問題還未解決呢 ~
什麼問題 ?? 就是還未打印嘛 !!! 對了 ~ 怎樣打印 ?
忘了嗎 ?? 懶人計劃中的其中一個功能哦 ~ copy 過來就成了 ~
ActiveSheet.PrintOut from:=1, To:=1, copies:=1
嗯 ~ 可以了 ~ 但是有一個問題 , 現在操作的頁面是 summary , 那麼 ActiveSheet.PrintOut 不就變成打印 summary 頁面了嗎 ? 對哦 ~ 你真聰明 ~ 情況就是這樣 , 所以我們要在這句程式碼上面 , 再加一句 : Worksheets("Invoice").Activate
當程式碼在執行 PrintOut 之前 , 就會先把 invoice 頁面轉成使用中的狀態 , 那麼 , ActiveSheet.PrintOut 就不再有問題了 ~
=====================================
Private Sub CommandButton1_Click()
Worksheets("Summary").Range("A3").Select
ActiveCell.End(xlDown).Select
LastRec = ActiveCell.Row
Worksheets("Summary").Range("H3").Select
ActiveCell.End(xlDown).Select
LastRec2 = ActiveCell.Row
For PrintLoop = LastRec2 + 1 To LastRec
If Worksheets("Summary").Range("H" & PrintLoop).Value = "" And Worksheets("Summary").Range("I" & PrintLoop).Value = "" Then Worksheets("Invoice").Range("A2").Value = Worksheets("Summary").Range("A" & PrintLoop).Value
Worksheets("Invoice").Activate
ActiveSheet.PrintOut from:=1, To:=1, copies:=1
Next PrintLoop
End Sub
=====================================
你的程式碼應該跟我的都一樣吧 ~ 當你第一次測試執行之後 , 又會發現 , 操作頁面停留在 invoice 頁面 , 對使用者做成不便哦 ~
簡單嘛 ~ 在 End Sub 上面再加一句 : Worksheets("Summary").Activate
行了 ~ 什麼都行了 ~ 呵呵呵呵呵 ~
好了 ~ 這次的分享又要告一段落了 ~ 下一次拿什麼對實際工作有用的東西來寫好呢 ~ 還未想到哦 ~ 有空的話 , 你告訴我你想知道什麼吧 ~ 哈哈 ~
下一次再見囉 ~
2 留言:
威廉老師您好!
可以在此向您請教一些字訂物件的概念嗎?samtong@hong-tai.com.tw
我的名字叫湯程進(samtong)
HI Sam ~
如果你遇到問題的話貼出來就 OK 了 , 我知道的話一定會告訴你的 :) 多交流才會有進步, 這是我的宗旨哦 :)
另外就是 .... E-MAIL 地址和名字就不要貼出來了~ 網上的不法之徒蠻多的~ 給人拿出做一些不好的事情就麻煩囉~ 小心小心~ :)
發佈留言