如何在 Outlook 中标记电子邮件时自动创建新约会

立即分享:

有些人希望在标记电子邮件时自动或快速创建新的 Outlook 约会。 本文将介绍一种用Outlook VBA实现的方法。

有时,我可能会收到一封提到约会或会议的电子邮件。 但它只是一封电子邮件,而不是 Outlook 中的常见会议项目。 在这种情况下,我必须在我的 Outlook 日历中手动创建一个新约会。 这就有点麻烦了。 所以我希望Outlook可以自动创建一个新的约会。 然而,Outlook 并不支持我们在标记电子邮件时自动创建新约会。 因此,为了实现它,我选择使用 Outlook VBA。 下面是详细的 VBA 代码和步骤。

标记电子邮件时自动创建新约会

  1. 首先,切换到“开发人员”选项卡并点击“代码”组中的“Visual Basic”按钮。Visual Basic 按钮
  2. 然后在新的“Microsoft Visual Basic for Applications”窗口中,您需要双击“ThisOutlookSession”来打开这个项目。
  3. 然后将以下 VBA 代码复制并粘贴到其中。
Public WithEvents olItems As Outlook.Items

Private Sub Application_Startup()
    Set olItems = Session.GetDefaultFolder(olFolderInbox).Items
End Sub

Private Sub olItems_ItemChange(ByVal Item As Object)
    Dim oAppt As AppointmentItem
    Dim strMsg As String
    Dim nRes As Integer
 
    On Error Resume Next
 
    If TypeName(Item) = "MailItem" And Item.IsMarkedAsTask = True Then
       strMsg = "Do you want to create a new appointment"
       nRes = MsgBox(strMsg, vbYesNo + vbQuestion, "Confirm Creating Appointment")
       If nRes = vbYes Then
          Set oAppt = Application.CreateItem(olAppointmentItem)
          With oAppt
               .Subject = "New Appt: " & Item.Subject
               .Location = InputBox("Enter the Location, please.")
               'Type the concrete time, such as "12/29/2015 15:30"
               .Start = InputBox("Enter a specific time (format: MM/DD/YYYY hh:mm), please.")
               .Duration = 120
               .Body = "New Appointment: " & vbCrLf & vbCrLf & Item.Body
               .Attachments.Add Item
               .ReminderSet = True
               .ReminderMinutesBeforeStart = 30
               'Use ".Save" to directly save the new appointment
               .Display
          End With
       End If
 
      'To clear the flag on the email
      'If you want to keep email flagged, remove the following 4 lines
       With Item
            .ClearTaskFlag
            .Save
       End With
    End If
End Sub

将 VBA 代码复制到 ThisOutlookSession

  1. 随后,您应该使用“VBA 项目数字证书”创建一个新证书并签署当前“ThisOutlookSession”项目。对 ThisOutlookSession 项目进行数字签名
  2. 之后,您可以退出“Visual Basic”窗口并将宏设置更改为仅允许数字签名的宏。只允许数字签名的宏
  3. 最终,您可以尝试一下。
  • 首先,选中一封电子邮件并单击“标记”图标。 你会得到一个提示,就像下面的截图:确认创建约会
  • 选择“是”后,您需要指定位置并点击“确定”按钮。输入位置
  • 然后你需要指定约会时间。输入具体时间
  • 最后点击“确定”后,会打开一个新的约会,如下图:新任命

备注:

  1. 在此 VBA 代码中,提醒默认设置为 30 分钟。 您可以在代码中随意更改它。
  2. 代码将约会持续时间设置为 120 分钟,即 2 小时。 您可以根据需要更改“.Duration = 120”行。
  3. 如果您没有指定具体时间,默认情况下新约会将设置为当前日期和时间。
  4. 您可以添加“.Save”行以直接保存约会。

处理 Outlook 问题

众所周知,Outlook 可能会遇到各种问题。 最糟糕的情况一定是 Outlook 损坏。 如果您的 Outlook 文件已损坏并且您手头有一个备份,您可以轻松地恢复您的 损坏的 Outlook 数据 从备份。 但如果您没有备份,则需要修复损坏的 Outlook 文件。 在这种情况下,您可以使用内置的修复工具 Scapst.exe,或者求助于更有经验的工具,例如 DataNumen Outlook Repair.

作者简介:

Shirley Zhang 是一位数据恢复专家 DataNumen, Inc.,它是数据恢复技术领域的世界领先者,包括 修复 SQL Server mdf数据库问题 和 outlook 修复软件产品。 欲了解更多信息,请访问 datanumen.com

立即分享:

评论被关闭。