我写了一个宏,它循环遍历用户日历,并对修改某个特定标识符的条目进行修改。通过Outlook约会项目快速迭代
问题是,当日历非常大时,这需要很长时间才能完成。我似乎无法筛选约会,因为oAppointmentItems
似乎是在创建时存储条目的 - 这不一定与它们启动时的顺序相同。
我正在使用的代码是这样的:
Dim oOL As New Outlook.Application
Dim oNS As Outlook.NameSpace
Dim oAppointments As Object
Dim oAppointmentItem As Outlook.AppointmentItem
Set oNS = oOL.GetNamespace("MAPI")
Set oAppointments = oNS.GetDefaultFolder(olFolderCalendar)
For Each oAppointmentItem In oAppointments.Items
DoEvents
' Something here
Next
Set oAppointmentItem = Nothing
Set oAppointments = Nothing
Set oNS = Nothing
Set oOL = Nothing
短除去DoEvents
(这仅意味着在Outlook似乎锁定到用户)的是没有什么办法可通过施加加快这某种过滤器?例如,约会在未来开始。
这正是我一直在寻找今天的工作!这为我节省了很多麻烦。但我注意到的一件事是,我无法使用=来使用日期过滤器,并且很难获得确切的日期(似乎取决于它们是在Outlook中是日期还是日期/时间)。 Like> Date - 1天和 Date和Date
Jeff
2010-07-27 16:53:34
在VBA中使用早期绑定,olRecItems应如何DIM'd? (外表。???)。谢谢.. – 2012-05-22 13:41:47
@iDevlop as Outlook.MAPIFolder AFAIK。 – Fionnuala 2012-05-22 13:48:53