Как запустить макрос в Outlook по таймеру?

RealFikus

Как запустить макрос в Outlook c небольшой задержкой?
Есть макрос:
 
Sub Макрос1 
   ...
End Sub

И при приходе новой почты он запускается в работы следующим кодом:
Private Sub Application_NewMail
    Макрос1
End Sub

На ум сразу пришло:
Private Sub Application_NewMail
    Application.OnTime Now + TimeValue("00:05:00" "Макрос1"
End Sub

Но OnTime в Outlook, в отличии от Excel не работает.
Цикл повторяющийся до наступления требуемого времени не подходит т.к. он вешает Outlook, а пауза берется именно для того чтобы сработоло правило Outlook-а, которое отсортирует письма которые требуется обработать макросом в отдельную папку. Как быть? Чем заменить Ontime? Заранее благодарен за помощь.

0000

Мб какой-нить sleep есть?

RealFikus

Выражение sleep VB не понимает, или может надо подключить какую-либо библиотеку. Может эта функция там как-нибудь по другому называется. Может кто-то уже находил?

ceylor

что-то типа Application.Wait

RealFikus

Тоже не работает, но я нашел решение:
PauseTime = 180    ' Set duration.
Start = Timer ' Set start time.
Do While Timer < Start + PauseTime
   DoEvents ' Yield to other processes.
Loop

Эта конструкция позволяет сделать паузу не вешая Outlook.
Оставить комментарий
Имя или ник:
Комментарий: