Outlook-VBA para abrir a pasta contida de um item da lista de tarefas selecionada

1

No Outlook 2013, uso a barra lateral "Lista de tarefas":

  • Na tela Mail , escolha a guia da faixa de opções Visualizar .
  • No grupo de fitas Layout , clique na lista suspensa Barra de tarefas e selecione Tarefas .

Os itens de correio que eu "sinalizo" estão visíveis nesta lista.

Gostaria que alguém fornecesse código VBA para abrir a pasta contendo do item de tarefa selecionado.

Eu tentei o seguinte código ( source ), mas infelizmente tem um erro.

Public Sub GetItemsFolderPath()
    Dim obj As Object
    Dim F As Outlook.MAPIFolder
    Dim Msg$
    Set obj = Application.ActiveWindow
    If TypeOf obj Is Outlook.Inspector Then
        Set obj = obj.CurrentItem
    Else
        Set obj = obj.Selection(1)
    End If
    Set F = obj.Parent ' <---------- DEBUG INDICATES THE ERROR IS HERE
    Msg = "The path is: " & F.FolderPath & vbCrLf
    Msg = Msg & "Switch to the folder?"
    If MsgBox(Msg, vbYesNo) = vbYes Then
        Set Application.ActiveExplorer.CurrentFolder = F
    End If
End Sub

EDITAR

O erro ocorre apenas quando você está exibindo uma pasta de nível superior diferente daquela em que o item sinalizado está localizado, no momento em que você tenta executar a macro.

  • Por exemplo, se você estiver explorando em algum momento na sua conta do Exchange e o item de email sinalizado estiver em alguma subpasta da sua conta do Exchange, a macro funcionará bem.
  • Da mesma forma, se você estiver atualmente pesquisando em algum arquivo de dados do PST, e o item de email sinalizado estiver em alguma subpasta desse arquivo de dados do PST, a macro funcionará bem.
  • Mas, se você estiver explorando um arquivo de dados PST e seu item sinalizado NÃO estiver dentro do PST, mas em algum outro lugar como um PST diferente ou sua conta do Exchange, a macro terá o erro.
por Lakey 30.04.2015 / 02:04

1 resposta

1

Este é um erro MAPI_E_INVALID_ENTRYID. Pode indicar que o seu arquivo PST está corrompido. Tente executar o utilitário scanpst.exe para corrigi-lo e depois tente executar o script novamente.

Além disso, você pode querer tentar executar o script de itens em outro (s) arquivo (s) PST.

EDIT: Às vezes acontece que o profile do Outlook está corrompido e se comporta de uma maneira estranha. Você pode tentar criar um novo perfil do Outlook.

    
por 05.05.2015 / 11:16