Outlook VBA: объединить два объекта папки вместе для сортировки / ограничения фильтра - PullRequest
0 голосов
/ 03 января 2019

У меня есть две папки задач в Outlook.Я хочу создать из них одну коллекцию, в которой я могу использовать Sort и Restrict.Как мне это сделать?

Например

Set FolderTasks1 = Application.Session.GetDefaultFolder(olFolderToDo).Items
Set FolderTasks2 = Application.Session.Accounts("xx@outlook.com").DeliveryStore.GetDefaultFolder(olFolderToDo).Items

[insert magic joining thing here. Call the new collection joinedTasks]

strFilter = Format(Now, "ddddd")
strFilter = "[Start Date] <= " & Chr(34) & strFilter & Chr(34) & " And Not [status] = ""Completed"" And Not [Categories] = ""Project"""
joinedTasks.Sort "[Start Date]"
Set ListOfTasks = joinedTasks.Restrict(strFilter)

Я попытался зациклить обе папки и создать коллекцию, но затем я теряю возможность сортировать и ограничивать коллекцию.

Я создаю инструмент, который позволит мне просматривать все мои задачи в Outlook.Я могу заставить его работать для каждой папки отдельно, но я хочу сделать это для всех задач во всех папках (две разные учетные записи).

1 Ответ

0 голосов
/ 05 января 2019

Как правило, Items.Sort/Restrict может выполняться только для элементов одной папки. Нет способа сделать соединение.

Однако вы можете создать папку поиска, используя Application.AdvancedSearch . Вы можете указать более одной папки в параметре Scope. Помните, что AdvancedSearch является асинхронным, поэтому вам нужно подписаться на событие Application.AdvancedSearchComplete.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...