1

Я использую Microsoft Outlook 2016 Home.

У меня есть международные клиенты, которые ожидают быстрого ответа на электронные письма, которые они мне отправляют. Чтобы немного поспать, я хотел бы настроить автоматический ответ "Вне офиса" в Outlook для всех входящих писем с 22:00 до 08:00 по местному времени.

Я понял, что мне нужно применить сценарий для достижения этой цели. Я нашел этот скрипт, который отправляет автоответ в дневное время для писем, полученных до 15:00. Этот скрипт работает как брелок, поэтому я попытался изменить его на работу в ночное время для писем, полученных с 22:00 до 08:00.

Оригинальный скрипт здесь: Как настроить Outlook для отправки автоответчика в течение определенного часа дня каждый день?

Мой измененный сценарий здесь:

Public Sub Check_ReceivedTime(newMail As Outlook.MailItem)

Dim obj As Object
Dim ReceivedHour As Integer
Dim newReply As MailItem
Dim msg As String

ReceivedHour = Hour(newMail.ReceivedTime)

If ReceivedHour >= 22 OR ReceivedHour < 8 Then

    Set newReply = newMail.reply
    msg = "This is the email body text..."

    CreateMail newReply.To, msg

Else

    Debug.Print "During office hours. Do not sent the automated reply."

End If

Set newReply = Nothing

End Sub


Private Sub CreateMail(ReplyAddress As String, msg As String)

Dim objMail As Outlook.MailItem

Set objMail = CreateItem(olMailItem)

With objMail
    .To = ReplyAddress
    .Body = msg

    .Display
    ' or
    ' .Send

End With

End Sub

Я подозреваю, что может быть проблема с 12/24 часовым форматом, возможно, но я не могу исправить это самостоятельно. Кто-нибудь может мне помочь?

0