如何在 Microsoft Outlook 中创建快捷方式以便第二天早上发送电子邮件

如何在 Microsoft Outlook 中创建快捷方式以便第二天早上发送电子邮件

我正在尝试完成以下任务:

有时我晚上工作得有点晚。我认为,如果没有紧急情况,晚上/夜间任何时候都不要发送电子邮件是一种很好的做法。所以我有时会使用do not deliver before XXX描述的选项这里

但有时我必须一次发送多封电子邮件,这使得标准程序有点繁琐。

因此,我想知道是否有办法自动完成这一操作,最好是通过快捷方式。我浏览了快速步骤选项,但它似乎不是可能性之一。

那么有办法吗?

答案1

在我使用 Outlook(我自己的加上 Exchange)的这些年里,我还没有看到任何可以自动实现该功能的快捷方式。

您可以做的(我已经这样做了)是关闭自动发送/接收。即使是计划发送/接收也无法实现此功能,因为发送/接收间隔不规律(即不是每半小时或每小时等)。

因此,请关闭“自动发送/接收”,然后撰写并发送您的电子邮件。它们将全部保存在发件箱中。

每天早上发送/接收来收集您的电子邮件,晚上发件箱中的电子邮件就会发出去。

在没有您正在寻找的快捷方式的情况下,这似乎可以满足您的需求。此方法适用于任何最新版本的 Outlook,并且很可能适用于未来版本,因为它基于标准 Outlook 方法。

答案2

同意约翰的观点。即使对我自己来说,我通常离线办公晚上,这样信息就会在发件箱中,早上关闭时就可以发送,如果你晚上也不需要收到很多信息,你可以试试:发送/接收>离线工作 在此处输入图片描述

答案3

VBA 中的解决方案可能如下所示:

'
' Automatically send emails at the beginning of the work week if sent on the weekend.
'
' This method is triggered by Outlook before sending and allows to cancel the send.
'
' Messages with highPriority are still send.
'
' Inspired from: https://www.mikesel.info/delay-outlook-mail-sending/
'
Private Sub Application_ItemSend(ByVal Item As Object, Cancel As Boolean)
    On Error GoTo ErrHand                   'Error Handling
    Dim nxtMonday As String                 'Variable containing next Monday's date
    Dim objMailItem As MailItem             'Object to hold mail item
    
    ' Caution: This is also called in case of appointments/meeting requests
    If TypeOf Item Is Outlook.MailItem Then
    
        Set objMailItem = Item                  'Set object to mail item just sent
                        
        ' Always send important messages
        If objMailItem.Importance = olImportanceHigh Then
            Exit Sub
        End If
                        
        If Weekday(Date, vbMonday) = 6 Then 'Check to see if todays weekday value is 6 (http://msdn.microsoft.com/en-us/library/82yfs2zh(v=vs.80).aspx)
            nxtMonday = Date + (2)           'As today is saturday, Monday is today + 2 days
            objMailItem.DeferredDeliveryTime = nxtMonday & " 08:00:00"   'Set delayed delivery time to today + 2 days
        End If
    
        If Weekday(Date, vbMonday) = 7 Then 'Check to see if todays weekday value is 7 / sunday
         nxtMonday = Date + (1)           'As today is Sunday, Monday is today + 1 day
         objMailItem.DeferredDeliveryTime = nxtMonday & " 08:00:00"   'Set delayed delivery time to today + 1 day
        End If
        
    End If
        
    Exit Sub
    
ErrHand:
    MsgBox ("An error has occured on line " & Erl & ", with a description: " & Err.Description & ", and an error number " & _
        Err.Number)
        
End Sub

相关内容