Vba 检查senderEmailAddress
我在outlook框的VBA中有一个侦听器,用于在用户从特定电子邮件接收邮件时执行操作 问题是,如果我收到一封错误邮件(未送达邮件),那么我的条件是在一封没有该属性的邮件上运行,因此我的方法崩溃 我也不知道主题是什么 是否有人知道我是否可以测试该属性是否存在,或者是否有其他属性可以检查以确定我的发件人是否匹配 非常感谢Vba 检查senderEmailAddress,vba,outlook,outlook-filter,Vba,Outlook,Outlook Filter,我在outlook框的VBA中有一个侦听器,用于在用户从特定电子邮件接收邮件时执行操作 问题是,如果我收到一封错误邮件(未送达邮件),那么我的条件是在一封没有该属性的邮件上运行,因此我的方法崩溃 我也不知道主题是什么 是否有人知道我是否可以测试该属性是否存在,或者是否有其他属性可以检查以确定我的发件人是否匹配 非常感谢 Sub SetFlagIcon() Dim mpfInbox As Outlook.Folder Dim obj As Outlook.MailItem Dim
Sub SetFlagIcon()
Dim mpfInbox As Outlook.Folder
Dim obj As Outlook.MailItem
Dim i As Integer
Set mpfInbox = Application.GetNamespace("MAPI").GetDefaultFolder(olFolderInbox).Folders("Test")
' Loop all items in the Inbox\Test Folder
For i = 1 To mpfInbox.Items.Count
If mpfInbox.Items(i).Class = olMail Then
Set obj = mpfInbox.Items.Item(i)
If obj.SenderEmailAddress = "someone@example.com" Then
'Set the yellow flag icon
obj.FlagIcon = olYellowFlagIcon
obj.Save
End If
End If
Next
End Sub
Dim obj作为通用对象
-收件箱中除了邮件项目
之外还有其他对象,也可以尝试使用来改进循环
Option Explicit
Sub SetFlagIcon()
Dim mpfInbox As Outlook.Folder
Dim obj As Object
Dim Items As Outlook.Items
Dim i As Long
Dim Filter As String
Set mpfInbox = Application.GetNamespace("MAPI").GetDefaultFolder _
(olFolderInbox).Folders("Temp")
Filter = "[SenderEmailAddress] = 'someone@example.com'"
Set Items = mpfInbox.Items.Restrict(Filter)
' Loop all items in the Inbox\Test Folder
For i = 1 To Items.Count
If Items(i).Class = olMail Then
Set obj = Items(i)
'Set the yellow flag icon
obj.FlagIcon = olYellowFlagIcon
obj.Save
End If
Next
End Sub
将筛选器应用于集合,返回一个新集合,其中包含原始集合中与筛选器匹配的所有项
Dim obj作为通用对象
-收件箱中除了邮件项目
之外还有其他对象,也可以尝试使用来改进循环
Option Explicit
Sub SetFlagIcon()
Dim mpfInbox As Outlook.Folder
Dim obj As Object
Dim Items As Outlook.Items
Dim i As Long
Dim Filter As String
Set mpfInbox = Application.GetNamespace("MAPI").GetDefaultFolder _
(olFolderInbox).Folders("Temp")
Filter = "[SenderEmailAddress] = 'someone@example.com'"
Set Items = mpfInbox.Items.Restrict(Filter)
' Loop all items in the Inbox\Test Folder
For i = 1 To Items.Count
If Items(i).Class = olMail Then
Set obj = Items(i)
'Set the yellow flag icon
obj.FlagIcon = olYellowFlagIcon
obj.Save
End If
Next
End Sub
将筛选器应用于集合,返回一个新集合,其中包含原始集合中与筛选器匹配的所有项