Dodałem dodatkową skrzynkę pocztową do mojego konta. Chcę utworzyć widok podobny do widoku „do zrobienia”, który istnieje dla tego użytkownika. Oznacza to, że chcę folder wyszukiwania, który przeszukuje tę skrzynkę pocztową w poszukiwaniu obiektów dowolnego typu, które mają ustawioną flagę kontrolną lub są zadaniem.
Nie możesz tego zrobić z interfejsu użytkownika. Znalazłem to:
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
To działa doskonale - dla mojej skrzynki pocztowej. Oznacza to, że tworzy widok podobny do widoku listy zadań, który chcę. Ma każdy typ obiektu z flagą kontrolną i zadaniami. Jeśli jednak odkomentuję strS = "'\\Mailbox - Other'"
i uruchom go, program Outlook ulega awarii w wierszu .Save ().
Jakakolwiek rada?
Kiedy dźwigi programu Outlook znajdują się w innej skrzynce pocztowej, czy jest wyświetlany komunikat o błędzie lub więcej informacji, które możesz nam przekazać, dokładnie o tym, co się dzieje?
Clare Macrae
Awaria przy naruszeniu zasad dostępu (c0000005) przy 0x000479ff podczas wykonywania linii .Save ().
EB.