Board logo

標題: 如何暫停巨集運行 [打印本頁]

作者: cdkee    時間: 2010-11-9 01:03     標題: 如何暫停巨集運行

如何在按"Ctrl"鍵1次,來暫停巨集xxx運行,再按多次"Ctrl"鍵,巨集xxx繼續運行?謝謝大大!
作者: oobird    時間: 2010-11-9 08:09

用到Application.OnKey方法,但別用ctrl等重要系統鍵。
迴圈過程中用DoEvents。
作者: cdkee    時間: 2010-11-9 13:00

用到Application.OnKey方法,但別用ctrl等重要系統鍵。
迴圈過程中用DoEvents。
oobird 發表於 2010-11-9 08:09



    設定按"A"鍵作停止巨集,小輩的錯在哪裡?
[attach]3534[/attach]
作者: Min    時間: 2010-11-9 20:29

用DoEvents... oobird版主已經更您講了...
只是您的程式Run一次要點時間 所以按下"A"要再等一下~



Sub 模擬按鍵()

    Dim X As Integer
    Dim Y As Integer
    X = 90
    Y = 350
    Call SetCursorPos(X, Y)
   
    mouse_event 2, 0, 0, 0, 0
    mouse_event 4, 0, 0, 0, 0
   
      keybd_event 17, MapVirtualKey(17, 0), 0, 0
      keybd_event 67, MapVirtualKey(67, 0), 0, 0
      keybd_event 67, MapVirtualKey(67, 0), 2, 0
      keybd_event 17, MapVirtualKey(17, 0), 2, 0
      
    X = 90
    Y = 490
    Call SetCursorPos(X, Y)
    mouse_event 2, 0, 0, 0, 0
    mouse_event 4, 0, 0, 0, 0
      
    Sheets("sheet1").Cells(3, 3).Select
    ActiveSheet.Paste
    Sleep 3000
   
    DoEvents
    Application.OnKey "A", "停止"

    模擬按鍵
End Sub
作者: cdkee    時間: 2010-11-9 23:10

用DoEvents... oobird版主已經更您講了...
只是您的程式Run一次要點時間 所以按下"A"要再等一下~



S ...
Min 發表於 2010-11-9 20:29



    感謝版大!
在Sleep的時間內,command buttom用不到,有沒有可在DELAY時間內(預定DELAY1/2秒),可用到的?再次感謝!




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