Compartilhar via


Cancelando um evento

O Outlook chama manipuladores de eventos no programa para responder a esses eventos como ações que o usuário toma ou altera no repositório de mensagens. Cada evento é acompanhado por uma ação padrão que o Outlook executa como resultado do evento. Por exemplo, quando o evento Open de um item ocorre, o Outlook por padrão exibe o item em uma janela do inspetor.

Alguns eventos só notificam o programa na ocorrência de um determinado evento. Nesse caso, o manipulador de evento simplesmente responde ao evento. Nos outros casos, o Outlook permite que um manipulador cancele o evento, isto é, instrua o Outlook a não executar a ação padrão associada ao evento. Por exemplo, no caso do evento Open, o programa pode impedir que o Outlook exiba o item em um inspetor. Se um evento puder ser cancelado, o tópico de referência que o descreve indicará como cancelá-lo.

Se um evento puder ser cancelado, um manipulador de eventos escrito em Microsoft Visual Basic ou Microsoft Visual Basic for Applications receberá um parâmetro que ele define antes de ser retornado para indicar se o evento deve ser cancelado. Por exemplo, um manipulador do evento Open escrito em Visual Basic for Applications poderá ser semelhante a esse. O exemplo presume que o valor OpenOK esteja definido em outro lugar.

Sub myItem_Open(byRef Cancel as Boolean) 
 If OpenOK Then 
 Cancel = False ' Outlook performs default action 
 Else 
 Cancel = True ' Outlook does not perform default action 
 EndIf 
End Sub

Por causa das limitações em VBScript, entretanto, essa sintaxe não pode ser usada. Um manipulador do evento Open no script de um item deve ser escrito como uma função. Para cancelar o evento, o valor da função é definido como False antes de ser retornado, conforme no exemplo a seguir.

Function Item_Open() 
 If OpenOK Then 
 Item_Open = True ' Outlook performs default action 
 Else 
 Item_Open = False ' Outlook does not perform default action 
 End If 
End Function

Suporte e comentários

Tem dúvidas ou quer enviar comentários sobre o VBA para Office ou sobre esta documentação? Confira Suporte e comentários sobre o VBA para Office a fim de obter orientação sobre as maneiras pelas quais você pode receber suporte e fornecer comentários.