Я добавил дополнительный почтовый ящик в свой аккаунт. Я хочу создать представление, аналогичное представлению «список дел», которое существует для этого пользователя. Это означает, что мне нужна папка поиска, которая ищет в этом почтовом ящике объекты любого типа, для которых установлен флаг отслеживания или является задачей.
Вы не можете сделать это из пользовательского интерфейса. Я нашел это:
Sub CreateNewSearchFolder()
Set MyOutlookApplication = Outlook.Application
SearchSubFolders = True
Set MapiNamespace = Application.GetNamespace("MAPI")
Set TasksFolder = MapiNamespace.GetDefaultFolder(Outlook.OlDefaultFolders.olFolderTasks).Parent
strS = "'" & TasksFolder.FolderPath & "'"
'strS = "'\\Mailbox - Other'"
Dim folderName As String
folderName = InputBox("Name of new search folder?:", "Folder Name", "")
Dim objSch As Search
Dim taskFilter As String
taskFilter = "(""http://schemas.microsoft.com/mapi/proptag/0x0e05001f""= 'Tasks' AND ""http://schemas.microsoft.com/mapi/id/{00062003-0000-0000-C000-000000000046}/81010003"" <> 2) OR (NOT(""http://schemas.microsoft.com/mapi/proptag/0×10900003"" IS NULL) AND ""http://schemas.microsoft.com/mapi/id/{00062003-0000-0000-C000-000000000046}/81010003"" <> 2)"
Dim strTag As String
strTag = "RecurSearch"
Dim fupFilter As String
fupFilter = "(NOT(""urn:schemas:httpmail:messageflag"" IS NULL))"
Set objSch = Application.AdvancedSearch(Scope:=strS, _
Filter:=taskFilter & " OR " + fupFilter + "", _
SearchSubFolders:=True, Tag:=strTag)
objSch.Save (folderName)
End Sub
Это прекрасно работает - для моего почтового ящика. То есть он создает представление, похожее на представление списка дел, которое я хочу. Он имеет каждый тип объекта с последующим флагом и задачами. Однако, если я раскомментирую strS = "'\\Mailbox - Other'"
и запускаю ее, Outlook вылетает на.Сохранить () строку.
Любой совет?