Board logo

標題: [分享] 同時跑兩個程式! [打印本頁]

作者: Hsieh    時間: 2010-5-1 21:56     標題: 同時跑兩個程式!

本帖最後由 Hsieh 於 2010-10-2 12:33 編輯

Module1程式碼
  1. Option Explicit
  2. 'API函數宣告
  3. '設定計時器函數
  4. Declare Function SetTimer _
  5.     Lib "user32" ( _
  6.         ByVal hWnd As Long, _
  7.         ByVal nIDEvent As Long, _
  8.         ByVal uElapse As Long, _
  9.         ByVal lpTimerFunc As Long) _
  10. As Long
  11. '結數計時器函數
  12. Declare Function KillTimer _
  13.     Lib "user32" ( _
  14.         ByVal hWnd As Long, _
  15.         ByVal nIDEvent As Long) _
  16. As Long

  17. '開始第一個計時器
  18. 'EXCEL視窗的handle, id設為1, 每 0.2秒執行1次Asub程序
  19. Sub StartAsub()
  20.     SetTimer Application.hWnd, 1, 200, AddressOf Asub
  21. End Sub
  22. '結束第一個計時器
  23. Sub StopAsub()
  24.     KillTimer Application.hWnd, 1
  25. End Sub

  26. '開始第二個計時器
  27. 'EXCEL視窗的handle, id設為2, 每 0.5秒執行1次Bsub程序
  28. Sub StartBsub()
  29.     SetTimer Application.hWnd, 2, 500, AddressOf Bsub
  30. End Sub
  31. '結束第二個計時器
  32. Sub StopBsub()
  33.     KillTimer Application.hWnd, 2
  34. End Sub

  35. 'Asub在作用工作表之A1儲存格累加1
  36. Sub Asub()
  37. With ActiveSheet.Range("a1")
  38.     .Value = .Value + 1
  39. End With
  40. End Sub
  41. 'Bsub在作用工作表之B1儲存格累加1
  42. Sub Bsub()
  43. With ActiveSheet.Range("b1")
  44.     .Value = .Value + 1
  45. End With
  46. End Sub
複製代碼
Sheet1模組程式碼
  1. Option Explicit

  2. Private Sub CommandButton1_Click()
  3.     StartAsub
  4. End Sub

  5. Private Sub CommandButton2_Click()
  6.     StopAsub
  7. End Sub

  8. Private Sub CommandButton3_Click()
  9.     StartBsub
  10. End Sub

  11. Private Sub CommandButton4_Click()
  12.     StopBsub
  13. End Sub
複製代碼
crdotlin前輩的分享[attach]5[/attach]
作者: PD961A    時間: 2010-5-5 19:59

請問停止鍵
按下後
如何歸零??
謝謝!
作者: Hsieh    時間: 2010-5-6 18:28

歸零要另外一個歸零動作
作者: apolloooo    時間: 2011-1-16 01:41

什麼動作?
我執行第二次的時候都會跳出Excel.
作者: FAlonso    時間: 2011-1-16 17:42

完全看不明白頭幾行說什麼,declare, lib云云.....
作者: apolloooo    時間: 2011-1-16 18:29

這個就不用把 Timer 載入進來了,對吧!
作者: Hsieh    時間: 2011-1-16 22:11

回復 5# FAlonso
程式碼已經註解說明
那是API函數宣告


至於歸零,只需分別清空A1及B1儲存格即可,並無特別技巧
作者: FAlonso    時間: 2011-1-19 22:22

不好意思,不熟悉api
我怎樣知道某個api是屬於那個library或dll,中間有幾多個variables,該variables形態為何?
這些東西似乎不是office的東西,應該如何搜尋...?
作者: Hsieh    時間: 2011-1-19 22:23

回復 8# FAlonso


    google大神能幫你
作者: pocksoft    時間: 2015-12-28 20:20

回復 9# Hsieh

努力學習中




歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)