我正在尝试在Excel中编写一个宏来查看我的Outlook日历,获取所有事件,并显示以下信息:电子邮件的主题,开始时间,此电子邮件是否来自会议邀请,以及我对它的回应是否被接受。
我收到了前两条信息,但我无法弄清楚如何弄清楚最后两条信息。到目前为止,这是我所拥有的:
Dim olApp As Object
Dim olNS As Object
Dim olFolder As Object
Dim olApt As Object
Dim NextRow As Long
Set olApp = CreateObject("Outlook.Application")
Set olNS = olApp.GetNamespace("MAPI")
Set olFolder = olNS.GetDefaultFolder(9) 'olFolderCalendar
Range("A1:C1").Value = Array("Subject", "Start", "Meeting?", "Response")
NextRow = 2
For Each olApt In olFolder.Items
Cells(NextRow, "A").Value = olApt.Subject
Cells(NextRow, "B").Value = Format(olApt.Start, "MM-dd-yyyy")
Cells(NextRow, "C").Value = olApt.MeetingOrNot
Cells(NextRow, "C").Value = olApt.MeetingResponse
NextRow = NextRow + 1
Next olApt
显然,MeetingOrNot和MeetingResponse不是有效的属性,所以我想知道是否有人对此有更多了解,或者可以指出我对我想要的最后两个项目的一些参考。谢谢!
答案 0 :(得分:1)
使用MeetingStatus属性(olMeetingReceived等)和ResponseStatus属性(olResponseAccepted等)。
使用OutlookSpy查看约会 - 选择约会,然后单击项目按钮以查看实时的AppointmentItem对象。或单击“IMessage”按钮以查看“扩展MAPI”属性。
答案 1 :(得分:0)
我可以回答你问题的一半。您想要查看收件箱项的MessageClass
属性 - 您希望它属于AppointmentItem
类型(olAppointmentItem
)。
请参阅http://msdn.microsoft.com/en-us/library/office/aa171490(v=office.11).aspx