標題:
[發問]
如何在背景偵測時間?
[打印本頁]
作者:
EGBT
時間:
2015-11-1 12:05
標題:
如何在背景偵測時間?
假設我要在每天的下午4點~下午5點才會執行一次
If TimeValue(Now) > TimeValue("16:00:00") And TimeValue(Now) < TimeValue("17:00:00") Then
但有兩個問題,
第一:要如何不自己去執行,時間到他就會執行? (Excel都是開啟的狀態)
第二:假設下午4點一到,他就會一直執行直到5點,要如何只做一次?(Excel都是開啟的狀態)
麻煩各位大大指教
作者:
n7822123
時間:
2015-11-1 13:49
本帖最後由 n7822123 於 2015-11-1 13:52 編輯
回復
1#
EGBT
先執行一次 T1 程序就行了:D
Sub T1()
Dim 工作時間 As Date
Dim 重啟時間 As Date
工作時間 = Date + TimeSerial(16, 0, 0)
重啟時間 = Date + 1 + TimeSerial(0, 0, 1)
Application.OnTime 工作時間, "工作" '時間到今天16點,觸發工作程序
Application.OnTime 重啟時間, "T1" '明天凌晨1分 自動觸發此程序
End Sub
Sub 工作()
If TimeValue(Now) < TimeValue("16:00:00") then exit sub
If TimeValue(Now) > TimeValue("17:00:00") then exit sub
MsgBox "開始工作"
End Sub
複製代碼
作者:
n7822123
時間:
2015-11-1 13:59
回復
2#
n7822123
補充:
再工作程序最後一行加入
Call 工作
,就可以無腦執行到下午5點才停止。
作者:
EGBT
時間:
2015-11-2 10:45
回復
3#
n7822123
大大您好:
我執行一次之後,我調整電腦時間就不會再重新執行了...為什麼會這樣?
歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)