跳至主要内容

如何在Outlook中延迟发送会议邀请? 

Author: Xiaoyang Last Modified: 2025-05-07

通常,您可以使用延迟传递功能来在特定时间而不是立即发送消息。但是,有时您可能希望像延迟发送电子邮件一样延迟发送会议邀请。那么,如何在Outlook中按需要的时间发送会议邀请呢?

使用VBA代码在Outlook中延迟发送会议邀请


使用VBA代码在Outlook中延迟发送会议邀请

也许,在Outlook中没有直接的方法可以延迟会议邀请,但下面的VBA代码可以帮助您,请按照以下步骤操作:

1. 首先,您应该创建一个新建任务。在新建任务窗口中:

(1.) 指定会议的主题、开始日期和结束日期;

(2.) 设置您希望发送会议邀请的提醒日期和时间;

(3.) 根据需要输入会议内容。

doc delay sending meeting 1

2. 创建任务后,请点击 保存并关闭选项以关闭此窗口。

3. 然后,按住 ALT + F11 键打开 Microsoft Visual Basic for Applications 窗口。

4. 在 Microsoft Visual Basic for Applications 窗口中,双击 Project1(VbaProject.OTM) 窗格中的 ThisOutlookSession 打开模块,然后将以下代码复制并粘贴到空白模块中。

VBA代码:延迟发送会议邀请:

Private Sub Application_Reminder(ByVal Item As Object)
    Dim xTaskItem As TaskItem
    Dim xAppointmentItem As AppointmentItem
    Dim xRcpArr() As String
    If (Item.Class <> olTask) Or (LCase(Item.Subject) <> "Meeting test") Then
        Exit Sub
    End If
    Set xTaskItem = Item
    xRcpArr = VBA.Split("yy@addin99.com,sky@addin99.com,ruby@addin99.com", ",")
    Set xAppointmentItem = Outlook.Application.CreateItem(olAppointmentItem)
    With xAppointmentItem
        .MeetingStatus = olMeeting
        For i = 0 To UBound(xRcpArr)
            .Recipients.Add (xRcpArr(i))
        Next
        .Subject = xTaskItem.Subject
        .Location = "Office room 1002"
        .Start = xTaskItem.StartDate + #2:00:00 PM#
        .Body = xTaskItem.Body
        .Duration = 120
        .ReminderSet = True
        .ReminderMinutesBeforeStart = 20
        .Save
        .Send
    End With
    xTaskItem.MarkComplete
    Set xTaskItem = Nothing
End Sub
doc delay sending meeting 2

注意:在上面的代码中:Meeting test 是您在第一步中为会议创建的主题;并且,您应将收件人地址会议地点开始时间会议持续时间 的信息更改为自己的信息。

5. 保存并关闭代码,然后重新启动Outlook以使此代码生效。

6. 从现在开始,当任务项提醒在您设置的特定时间弹出时,Outlook将自动发送会议邀请。