Questão Como posso criar uma pasta de pesquisa que contém vários tipos de objeto no Outlook 2007 de uma caixa de correio secundária?


Eu adicionei uma caixa de correio adicional à minha conta. Eu quero criar uma exibição que é semelhante à exibição 'para fazer lista' que existe para esse usuário. Isso significa que eu quero uma pasta de pesquisa que pesquise nessa caixa de correio por objetos de qualquer tipo que tenham um sinalizador de acompanhamento definido ou seja uma tarefa.

Você não pode fazer isso a partir da interface do usuário. Eu achei isto:

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

Isso funciona perfeitamente - para minha caixa de correio. Isto é, cria uma visão semelhante à visão de lista de tarefas que eu quero. Tem cada tipo de objeto com um sinalizador de acompanhamento e tarefas. No entanto, se eu descomentar strS = "'\\Mailbox - Other'" linha e executá-lo, o Outlook falha na linha .Save ().

Algum conselho?


2


origem


Quando o Outlook se instala na outra Caixa de Correio, há alguma mensagem de erro ou qualquer outra informação que você possa nos fornecer sobre o que exatamente acontece? - Clare Macrae
Ele falha com uma violação de acesso (c0000005) em 0x000479ff ao executar a linha .Save (). - EB.


Respostas: