Outlook - 仅在工作/营业时间发送电子邮件

Outlook - 仅在工作/营业时间发送电子邮件

如何设置我的 Outlook,以便我在工作时间后和周末写的电子邮件会延迟并且仅在工作时间发送?

我想让自己看起来富有成效,但又能有效利用时间。这个要求太难了吗?

我可以使用规则将单条消息延迟到任意时间,最长延迟 120 分钟。有人能给我一些关于创建自定义规则以仅在工作时间发送邮件的提示吗?

提前致谢!

答案1

我搜索了一下 vba(Visual Basic for Applications)解决方案,发现了一个:
http://www.vbforums.com/showthread.php?t=574491

此解决方案适用于 Outlook 2003,但它也可能适用于较新版本的 Outlook。

编辑:
这是必须放入 Outlook 的 vba 代码。

Public Sub CheckSendTime()
    Dim obj As Object
    Dim Mail As Outlook.MailItem
    Dim WkDay As String
    Dim MinNow As Integer
    Dim SendHour As Integer
    Dim SendDate As Date
    Dim SendNow As String

'Set Variables
SendDate = Now()
SendHour = Hour(Now)
MinNow = Minute(Now)
WkDay = Weekday(Now)
SendNow = Y

'Check if Before 8am
If SendHour < 8 Then
    SendHour = 8 - SendHour
    SendDate = DateAdd("h", SendHour, SendDate)
    SendDate = DateAdd("n", -MinNow, SendDate)
    SendNow = N
End If
'Check if after 7PM
If SendHour > 19 Then           'After 7 PM
    SendHour = 32 - SendHour    'Send a 8 am next day
    SendDate = DateAdd("h", SendHour, SendDate)
    SendDate = DateAdd("n", -MinNow, SendDate)
    SendNow = N
End If

'Check if Sunday
If WkDay = 1 Then
    SendDate = DateAdd("d", 1, SendDate)
    SendNow = N
End If

'Check if Saturday
'If WkDay = 7 Then
'    SendDate = DateAdd("d", 2, SendDate)
'    SendNow = N
'End If

'Send the Email
  Set obj = Application.ActiveInspector.CurrentItem
  If TypeOf obj Is Outlook.MailItem Then
    Set Mail = obj
    'Check if we need to delay delivery
    If SendNow = N Then
      Mail.DeferredDeliveryTime = SendDate
    End If
    Mail.Send
  End If

End Sub

也许你需要调整一下时间。

答案2

如果您只是想在周末处理积压的工作,而实际上并没有实时邮件会话,请在开始发送回复之前将 Outlook 脱机。

然后当你周一回去上班的时候,上网并发送。

这还有一个额外的副作用,就是让你专注于现有的电子邮件债务,而不是让下班后的新活动打断你的思考。

相关内容