如何通过 VBA 和用户窗体有效地向 Outlook 电子邮件添加注释

立即分享:

有时,您可能希望在 Outlook 中为您的电子邮件编辑或添加注释。 本文将为您介绍一种实现此功能的有效方法。

来自“将注释插入 Outlook 邮件的 4 种简单方法》,您可以学习通过 Outlook 原生功能将注释插入邮件,例如使用自定义标志、在主题或正文中键入注释,或将现有注释项附加到此电子邮件。 然而,所有这些都只是解决方法。 在这里,我们将教您一个更有效的方法。 通过它,您将能够向电子邮件添加注释并随意编辑或删除现有注释。

通过 VBA 和用户窗体有效地向 Outlook 电子邮件添加注释

向 Outlook 电子邮件添加注释

  1. 首先,在 Outlook 中按“Alt + F11”访问 VBA 编辑器。
  2. 然后,单击“插入”>“用户窗体”。插入用户表单
  3. 接下来,在新的用户窗体中,创建一个如下图所示的文本框。在用户窗体中插入文本框
  4. 然后,将文本框的“名称”更改为“txtNotes”,如屏幕截图所示。更改文本框名称
  5. 之后,在窗体中创建两个命令按钮。创建命令按钮
  6. 然后,选择“CommandButton 1”。 将其“名称”更改为“btnOK”并将其“标题”更改为“确定”。更改按钮名称和标题
  7. 然后,将“CommandVutton 2”的“Name”修改为“btnCancel”,将“Caption”修改为“Cancel”。
  8. 接下来,选择整个用户窗体并将其“名称”修改为“frmAddNote”,将“标题”修改为“输入您的笔记”。更改用户表单名称和标题
  9. 随后,右键单击“fromAddNote”并选择“查看代码”。查看“frmAddNote”的代码
  10. 在新屏幕中,将以下代码复制到其中。
Private Sub btnOK_Click()
    Dim strNote As String
    Dim objMail As Outlook.MailItem
    Dim objNote As Outlook.NoteItem
 
    strNote = txtNotes.Text
 
    Set objMail = Application.ActiveExplorer.Selection.Item(1)
    Set objNote = Application.CreateItem(olNoteItem)
 
    objNote.Body = strNote
    objNote.Save
    objMail.Attachments.Add objNote
    objMail.Save
    objNote.Delete
    Unload Me
End Sub

Private Sub btnCancel_Click()
    Unload Me
End Sub

“frmAddNote”代码

  1. 稍后,将下面的 VBA 代码放入一个未使用的模块中。
Sub AddNote()
    frmAddNote.Show
End Sub

显示“frmAddNote”

  1. 最后,前往“文件”>“选项”>“自定义功能区”将此宏添加到功能区。将“AddNote”宏添加到功能区
  2. 现在,你可以试试看。 选择一封电子邮件,然后单击功能区中新的“添加注释”按钮。向所选电子邮件添加注释
  3. 在弹出的对话框中,您可以输入您的备注并单击“确定”。在框中输入您的备注
  4. 新的注释将立即添加到所选电子邮件中。新增说明

编辑或删除 Outlook 电子邮件的现有注释

有时,您可能想要编辑或删除电子邮件中的任何现有注释。 您可以按照以下步骤操作。

  1. 首先,创建另一个用户窗体并将其命名为“frmEditNote”并将其标题修改为“编辑您的笔记”。创建一个名为“frmEditNote”的 UseForm
  2. 然后,在表单中插入一个新的文本框,并将其“名称”更改为“txtNotes”。
  3. 接下来,添加两个命令按钮——“确定”和“取消”。
  4. 之后,右键单击“frmEditNote”并选择“查看代码”。
  5. 在“frmEditNote”的新代码页中,放入以下代码。
Private Sub UserForm_Initialize()
    Dim objAttachNote As Outlook.Attachment
    Dim objTempNote As Outlook.NoteItem

    Set objAttachNote = ActiveExplorer.AttachmentSelection.Item(1)
    Set objMail = objAttachNote.Parent
 
    If Right(objAttachNote.FileName, 3) = "msg" Then
       strTempFolder = Environ("Temp")
       strFilePath = strTempFolder & "\" & objAttachNote.FileName
       objAttachNote.SaveAsFile strFilePath
    End If
 
    Set objTempNote = Session.OpenSharedItem(strFilePath)
    txtNotes.Text = objTempNote.Body

    objTempNote.Close olDiscard
End Sub

Private Sub btnOK_Click()
    Dim strNote As String
    Dim objMail As Outlook.MailItem
    Dim objAttachNote As Outlook.Attachment
    Dim objNewNote As Outlook.NoteItem
 
    strNote = txtNotes.Text
 
    Set objNewNote = Application.CreateItem(olNoteItem)
    Set objMail = Application.ActiveExplorer.Selection.Item(1)
    Set objAttachNote = ActiveExplorer.AttachmentSelection.Item(1)
    objAttachNote.Delete

    objNewNote.Body = strNote
    objNewNote.Save
    objMail.Attachments.Add objNewNote
    objMail.Save
    objNewNote.Delete
    Unload Me
End Sub

Private Sub btnCancel_Click()
    Unload Me
End Sub

“frmEditNote”代码

  1. 之后,打开一个模块并将 VBA 代码复制到其中。
Sub EditNote()
    frmEditNote.Show
End Sub

Sub DeleteNotes()
    Dim objSelectedAttachments As Outlook.AttachmentSelection
    Dim objAttachment As Outlook.Attachment
    Dim objMail As Outlook.MailItem
 
    Set objSelectedAttachments = Application.ActiveExplorer.AttachmentSelection
 
    For Each objAttachment In objSelectedAttachments
        If Right(objAttachment.FileName, 3) = "msg" Then
           objAttachment.Delete
        End If
    Next
 
    Set objMail = Application.ActiveExplorer.Selection.Item(1)
    objMail.Save
End Sub

添加“编辑笔记”代码和“删除笔记”代码

  1. 最后,您可以将“EditNote”和“DeleteNotes”宏添加到功能区。将“EditNote”和“DeleteNotes”宏添加到功能区
  2. 最后,点击“确定”返回主窗口后,就可以尝试编辑笔记了。
  • 选择一个注释并单击“编辑注释”按钮。编辑笔记
  • 然后,将出现一个新的对话框,您可以在其中编辑所选的注释。在对话框中更改注释
  • 编辑完成后点击“确定”。 注释将被更新。更新说明
  1. 另外,您可以尝试删除任何注释。
  • 选择要删除的注释。
  • 单击功能区中的“删除注释”按钮。删除记事
  • 此注释将立即删除。音符消失

防止 Outlook 丢失数据

您是否正在寻找一种强大的解决方案来阻止 Outlook 数据丢失? 老实说,只要定期备份 Outlook 数据,就可以轻松避免 PST 数据丢失。 例如,即使 PST 损坏,您仍然可以轻松 恢复 PST 轻而易举地从备份的 PST 文件中提取数据。

作者简介:

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

立即分享:

评论被关闭。