我正在尝试自动拒绝并删除企业用户向特定 DL/组发出的所有日历邀请。
出于商业目的,我无法将自己从该组中删除以接收电子邮件,但这也会自动将邀请添加到我的日历中。
它的用途:
If VBA.LCase(xMeeting.SenderEmailAddress) = VBA.LCase("[email protected]") Then
我找不到将其变成以下内容的命令:
xMeeting.(Receiver/Recipient)EmailAddress
此外,在 Outlook 365 中,我在规则管理中没有选择“运行脚本”的选项。
我创建了一条规则:
如何将发件人更改为收件人,并在没有在规则中选择“运行脚本”的选项的情况下运行代码?
我找不到允许我将其转换为以下内容的命令:xMeeting.(Receiver/Receipient)EmailAddress
听起来发件人电子邮件地址已经已知:
If VBA.LCase(xMeeting.SenderEmailAddress) = VBA.LCase("[email protected]") Then
要获取项目的收件人,您需要使用 Outlook 项目的相应属性 - Recipients 属性返回一个
Recipients
集合,表示 Outlook 项目的所有收件人。使用 Recipients(index)
(其中 index
是名称或索引号)返回单个 Recipient
对象。 MeetingItem
接收者可以是以下 OlMeetingRecipientType
常量之一:olOptional
、olOrganizer
、olRequired
或 olResource
(请参阅 Type
属性)。例如:
Sub DemoMeetingRecipients()
Dim myAppointment As Outlook.AppointmentItem
Dim myPA As Outlook.PropertyAccessor
Dim d As Long
Dim myInt As Long
Set myAppointment = Application.ActiveInspector.CurrentItem
For d = 1 To myAppointment.Recipients.count
Debug.Print myAppointment.Recipients.item(d).name
Debug.Print myAppointment.Recipients.item(d).Type
Set myPA = myAppointment.Recipients.item(d).PropertyAccessor
myInt = myPA.GetProperty("http://schemas.microsoft.com/mapi/proptag/0x39050003")
Debug.Print myInt
Debug.Print "---"
Next d
End Sub