我希望获取所选收到的电子邮件的正文(在文件夹视图中或作为选定的电子邮件)并在开头添加操作存根,例如......
.Body = StubString & 'Body
我不确定如何使用ActiveInspector
和mailitem
等。
我查看了已回答的问题列表,但我找不到能帮助我的问题。
答案 0 :(得分:0)
警告:
在他们之间,我相信这两个答案和下面的宏将提供创建宏所需的所有背景。
我的这个答案是一个教程,让读者了解Outlook对象模型,其中包含您认为最有用的示例宏。您现在应该跳过这个并稍后再回来,因为我相信第二个答案更接近您的要求。 Update excel sheet based on outlook mail
第二个答案演示了如何创建Excel工作表并将邮件项的选定属性复制到该工作表,以便用户可以查看邮件项对VBA程序的外观。如上所述,宏输出收件箱中每个邮件项目的详细信息。其中的注释显示如何将宏的输出限制为选定的电子邮件,以便您可以检查要修改的邮件项的内容。 How to copy Outlook mail message into excel using VBA or Macros
以上答案都会检查所选文件夹中的所有邮件。如果您选择几个邮件项目然后运行下面的宏,您将获得这些邮件项目的选定属性。
Public Sub DemoExplorer()
Dim Exp As Outlook.Explorer
Dim ItemCrnt As MailItem
Dim NumSelected As Long
Set Exp = Outlook.Application.ActiveExplorer
NumSelected = Exp.Selection.Count
If NumSelected = 0 Then
Debug.Print "No emails selected"
Else
For Each ItemCrnt In Exp.Selection
With ItemCrnt
Debug.Print "--------------------------"
Debug.Print "From: " & .SenderName
Debug.Print "Subject: " & .Subject
Debug.Print "Received: " & Format(.ReceivedTime, "dMMMyy h:mm:ss")
'Debug.Print "Text " & Replace(Replace(Replace(.Body, vbLf, "{lf}"), vbCr, "{cr}"), vbTab, "{tb}")
'Debug.Print "Html " & Replace(Replace(Replace(.HTMLBody, vbLf, "{lf}"), vbCr, "{cr}"), vbTab, "{tb}")
End With
Next
End If
End Sub