相关疑难解决方法(0)

通过Outlook约会项快速迭代

我已经编写了一个宏来迭代用户日历,并修改了对某个critera有用的条目.

问题是,当日历非常大时,这需要很长时间.我似乎无法过滤约会,因为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
Run Code Online (Sandbox Code Playgroud)

没有删除DoEvents(这只意味着Outlook似乎锁定用户)有什么办法可以通过应用某种过滤器加快速度?例如,将来开始的约会.

iteration outlook vba calendar outlook-vba

12
推荐指数
1
解决办法
2万
查看次数

outlook宏 - 为什么不删除已删除文件夹中的所有项目?

我在Outlook中有以下宏来清除我删除的文件夹.它奇怪,因为它似乎没有删除所有条目.我必须运行这几次才能清除已删除的项目文件夹.(通常2或3次).每次文件夹中删除的项目数量确实减少但我不明白为什么一切都不会在第一次被删除.

这是我的代码; 哪里不对了?

Public Sub EmptyDeletedEmailFolder()

    Dim outApp As Outlook.Application
    Dim deletedFolder As Outlook.MAPIFolder
    Dim item As Object
    Dim entryID As String

    Set outApp = CreateObject("outlook.application")
    Set deletedFolder = outApp.GetNamespace("MAPI").GetDefaultFolder(olFolderDeletedItems)

    For Each item In deletedFolder.Items
        item.Delete             ' Delete from mail folder
    Next

    Set item = Nothing
    Set deletedFolder  = Nothing
    Set outApp = Nothing

End Sub
Run Code Online (Sandbox Code Playgroud)

outlook vba

1
推荐指数
1
解决办法
4844
查看次数

标签 统计

outlook ×2

vba ×2

calendar ×1

iteration ×1

outlook-vba ×1