Skip to content

Como usar a função MsgBox para personalizar mensagens do usuário (exemplo)

24 de maio de 2021

Uma das funções mais usadas no VBA é a janela de mensagem ou mais conhecida como MsgBox. Essas mensagens são usadas para enviar informações para o usuário final, seja apenas para indicar algo ou para convidá-lo a realizar uma ação. Use a função MsjBox para personalizar todas as mensagens enviadas para usuários finais de aplicativos do Office.

Normalmente, o MsgBox é usado quando um resposta simples por parte do usuário como Aceitar ou Cancelar. São fáceis de fazer e totalmente modificáveis, sendo diferentes para cada ação.

Como usar a função MsgBox para personalizar as mensagens para o usuário

A primeira coisa que você deve saber sobre MsgBox é que são criados através do código do projeto. O código é colocado dentro de um objeto e possui uma sintaxe específica. Felizmente, a sintaxe é bastante direta e você não precisa de mais habilidades de programação.

Sintaxe de um MsgBox

MsgBox (texto [, boton(es)] [, título] [,archivo de ayuda, contexto])

  • Mensagem (prompt): é o texto que contém a mensagem que você deseja comunicar ao usuário final.
  • Título (título): É opcional e é o texto relacionado ao nome da mensagem. Pode ser útil fornecer uma referência ao usuário que indique o relacionamento da mensagem.
  • Botões: Também é opcional e, se não estiver configurado, o botão Aceitar será exibido por padrão. Algumas das constantes que podem ser configuradas para os botões são:

  • Arquivo de ajuda (HelpFile): É a sequência de texto que contém a localização do arquivo de ajuda relacionado à mensagem. É opcional, mas caso seja colocado, o Contexto deve ser especificado.
  • Contexto (contexto): O valor numérico atribuído ao tópico de ajuda. Está relacionado ao arquivo de ajuda.

Argumento MsgBox

Existem várias maneiras de atribuir valores a um argumento de MsgBox. Uma maneira fácil de fazer isso é usando o nome da constante:

Private Sub CommandButton1_Click ()
text = “Você deseja sair?” ‘mensagem para o usuário
style = vbYesNo + vbCritical + vbDefaultButton2 ‘tipos de botão
title = “MsgBox Test message” ‘título da mensagem
help = “DEMO.HLP” ‘define o arquivo de ajuda
Ctxt = 1000 ‘Defina o tópico de contexto.
Resposta = MsgBox (texto, estilo, título, ajuda, Ctxt) ‘MsgBox enviada ao usuário
If Response = vbYes Then ‘Se o usuário selecionar Sim
lbltexto.Caption = “Excelente” ‘A ação que é executada
Else ‘Se o usuário selecionar não
lbltexto.Caption = “Nada acontece” ‘mensagem de texto que é exibida se o usuário disser não
Fim se

End Sub

No código acima você é atribui a função MsgBox a um botão no formulário. Quando o usuário clica no botão, uma mensagem aparecerá perguntando se ele deseja sair do sistema com dois botões de ação (Sim e Não), um ícone de mensagem crítica.

Se o usuário responder que a palavra “Excelente” será exibida em uma etiqueta e se a resposta for Não, a mensagem exibida é “Nada acontece”.

Outra maneira de exibir o argumento de um MsgBox é colocando o valor de cada constante ou adicionando o valor dos argumentos. A forma anterior é mais simples porque permite interpretar o código a olho nu.

Retorna valores do MsgBox

O importante é determinar que tipo de valor está associado à resposta do usuário, assim como o nome da constante. Dependendo do valor obtido, um ação específica. A imagem a seguir mostra os valores obtidos após pressionar um botão no MsgBox.

Retorna valores do MsgBox

Exemplos de MsgBox

Apenas o primeiro argumento (a mensagem ao usuário) é obrigatório, o resto é modificável e opcional.

1. Envie uma mensagem simples para o usuário

Sub privado btnbienvenida_Click ()
MsgBox “Olá, usuário, bem-vindo ao sistema”
End Sub

Quando a ação do botão é executada, um mensagem de boas-vindas ao usuário com o botão Aceitar que é exibido por padrão.

2. Envie uma mensagem ao usuário com botões

Sub privado btncontinuar_Click ()
MsgBox “Deseja continuar?”, VbYesNo + vbExclamation, “Continuar sistema”
End Sub

Este código é mais específico porque a mensagem é mostrada ao usuário, Os botões “Sim” e “Não” são atribuídos, o ícone de exclamação e o título “Continuar sistema”.