Я хочу создать напоминание или будильник, чтобы напоминать себе об отчетах, особенно с нерегулярной периодичностью.
Ниже приведен код, по которому я хочу автоматически звонить в указанный день и время. Появится окно с сообщением, и если щелкнуть «Нет», он будет запрашивать снова каждые 10 минут, пока не будет нажата кнопка «Да».
ans = Msgbox("Have you submitted the report?",vbYesNo + vbQuestion, "Reminder")
If ans = vbNo then
Do Until ans = vbYes
WScript.Sleep 600000 'every 10 minutes, 1 = 1ms
ans = Msgbox("Have you submitted the report?",vbYesNo + vbQuestion, "Reminder")
Loop
End If
WScript.Quit
Однако я не знаю, как написать код для запуска сценария? Есть ли в VBScript функция, аналогичная процедуре события в Excel VBA?
Например, я бы хотел что-то вроде этого:
If Weekday(Date()) = 3 or Weekday(Date()) = 5 And Time() >= TimeValue("3:30pm") then
'Call the above code
End If
Однако вышеприведенный оператор if не запустится сам, даже если дата и время удовлетворены ...
Дополнительные вопросы:
Если я нажму «Нет», окно сообщения исчезнет и вернется через 10 минут. Что если я захочу выйти из сценария до появления следующего окна сообщения, как это реализовать?
А также есть ли способ указать единицу времени, а не миллисекунды для метода Sleep? Большое спасибо!