如何在 Outlook 中完成特定任务时自动发送通知电子邮件

立即分享:

在 Outlook 中完成一项任务后,许多用户可能希望发送一封通知邮件来通知某人,例如上级。 手动发送电子邮件将非常耗时。 本文将介绍一种自动发送此类电子邮件的快捷方法。

从文章“在 Outlook 中将任务分配给其他人的 4 个快速步骤”,你可以知道,如果任务是你的上司分配给你的,并且他们需要提前提供状态报告,如下面的屏幕截图,他们将能够自动收到一封报告电子邮件。需要任务状态报告

但是,如果任务只是您自己创建的,当您将其标记为完成时,Outlook 将永远不会向任何人发送通知电子邮件。 在这种情况下,如果您想发送通知电子邮件来报告您的工作,则必须手动进行。 但是用下面的VBA代码,就可以让Outlook自动完成了。

完成特定任务时自动发送通知电子邮件

  1. 首先,您应该启动 Outlook 并切换到“开发人员”选项卡。
  2. 然后找到并单击“Visual Basic”按钮。 将出现一个新的“Microsoft Visual Basic for Applications”窗口。
  3. 之后,双击“ThisOutlookSession”项目打开它,然后将以下VBA代码复制到其中。
Public WithEvents olItems As Outlook.Items

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

Private Sub olItems_ItemChange(ByVal Item As Object)
    Dim obApp As Outlook.Application
    Dim olMail As Outlook.MailItem
    Dim Recip As String
 
    'Replace "test" as per your needs
    If InStr(LCase(Item.Subject), "test") > 0 And Item.Complete = True Then
       'Replace with your desired contact
       Recip = "John Smith"
       If MsgBox("Do you want to send a report to " & Recip & " ?", vbYesNo + vbQuestion, "Confirm Sending Report") = vbYes Then
          Set obApp = Outlook.Application
          Set olMail = obApp.CreateItem(olMailItem)
          With olMail
               .To = Recip
               .Subject = "Complete: " & Item.Subject
               .Body = "Dear Mr. Smith" & vbCrLf & "I've completed this task in " & DateDiff("d", Item.CreationTime, Now) & " day" & Chr(40) & "s" & Chr(41) & "." & vbCrLf & vbCrLf & "Task Name: " & Item.Subject & vbCrLf & "Start Date: " & Item.StartDate & vbCrLf & "Due Date: " & Item.DueDate & vbCrLf & "Creation Time: " & Item.CreationTime & vbCrLf & "Completed Time: " & Now & vbCrLf & vbCrLf & "Task Details: " & vbCrLf & Item.Body
               .ReadReceiptRequested = True
               'To directly send it,use ".Send" instead
               .Display
          End With
       End If
    End If
End Sub

将 VBA 代码复制到 ThisOutlookSession

  1. 随后继续签署此代码并将宏设置更改为仅允许数字签名的宏。
  2. 最后你可以退出当前窗口并试一试。
  • 当您将任务标记为完成时,您将收到一条消息,如下图所示:确认发送报告
  • 当您点击“是”按钮时,将打开一条新消息,如下图所示:通知电子邮件

请注意: 如果您将“.display”替换为“.Send”行,则此电子邮件将直接发送出去而不会出现。

注意来自未知电子邮件地址的邮件

您一定收到过许多来自未知地址的电子邮件。 建议谨慎处理此类电子邮件。 这是因为它们可能看起来无害,但包含恶意链接、附件或宏。 单击或打开它们后,您的 Outlook 可能会被感染。 那时,为了取回您的 Outlook 数据,您别无选择,只能使用恒星 损坏的 Outlook 数据修复实用程序,如 DataNumen Outlook Repair.

作者简介:

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

立即分享:

评论被关闭。