Como aplicar a ação a vários itens do Outlook selecionados?
-
29-10-2019 - |
Pergunta
O código aqui funcionapara um item apenas.Como modificar isso para executar DisplayItemMetadata
(veja o código) para cada item selecionado?
Upd.tentou fazer o seguinte:
For Each individualItem In Application.ActiveExplorer.Selection
With objButton
.BeginGroup = True
.Caption = "My &item"
.FaceId = 1000
.Tag = "DisplayItemMetadata"
If Not IsNull(Selection.Item(1)) Then
On Error GoTo 0
' Just in case the item selected
' doesn't have a valid EntryID.
' .Parameter = Selection.Item(1).EntryID
.Parameter = individualItem.EntryID
On Error GoTo ErrRoutine
End If
.OnAction = _
"Project1.ThisOutlookSession.DisplayItemMetadata"
End With
Next individualItem
Solução
Você precisa iterar sobre o objeto Selection, da seguinte maneira:
Dim individualItem As Object
For Each individualItem In Application.ActiveExplorer.Selection
'Perform some action on individualItem
Next Message
Se você tem uma função que executa uma ação em um único item selecionado, você deve alterar essa função para tomar um parâmetro (o item para executar a ação) e, em seguida, chamar essa função dentro do loop acima.
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow