我不知道要得到什麼預定。當我調試一個使用OnTime的程序時,我創建了自己的日誌,以便查看計劃和時間。
Public Function WriteLog(bSchedule As Boolean) As Boolean
Dim sFile As String, lFile As Long
Dim sOutput As String
Dim bReturn As Boolean
Const sSOURCE As String = "WriteLog()"
On Error GoTo ErrorHandler
bReturn = True
sFile = Environ("USERPROFILE") & gsLOGPATH & gsTIMERLOG
lFile = FreeFile
sOutput = bSchedule
sOutput = sOutput & "," & gdtNextRun
sOutput = sOutput & "," & gsSCHEDMACRO
sOutput = sOutput & "," & Format(Now, "mm/dd/yyyy hh:mm:ss")
Open sFile For Append As lFile
Print #lFile, sOutput
Close lFile
ErrorExit:
On Error Resume Next
WriteLog = bReturn
Exit Function
ErrorHandler:
bReturn = False
If bCentralErrorHandler(msMODULE, sSOURCE) Then
Stop
Resume
Else
Resume ErrorExit
End If
End Function
這使用了一個錯誤處理系統,所以你必須爲你修復它或刪除錯誤處理的東西。
- gdtNextRun是下一個預定運行
- gsSCHEDMACRO是一個全球性的字符串常量這是否我安排或不安排宏將運行
- bSchedule日誌全局日期變量。
如果你有多個OnTimes,你需要一個數組或集合來跟蹤。我只是一個預定運行或不運行的宏,所以我的全局變量/常量做到了這一點。
我試過你的解決方案(有一些修改),工作得很好。謝謝! –