Como usar a função msgbox no excel 2016 vba
Você provavelmente está familiarizado com a função VBA MsgBox. A função MsgBox, que aceita os argumentos apresentados abaixo, é útil para exibir informações e obter a entrada do usuário simples. É capaz de obter a entrada do usuário, porque é uma função. Uma função, como você provavelmente sabe, retorna um valor. No caso da função MsgBox, ele usa uma caixa de diálogo para obter o valor que ele retorna. Continue lendo para ver exatamente como ele funciona.
Conteúdo
- Exibir uma caixa de mensagem simples
- Video: excel macros (vba) - aula 1 - introdução e msgbox
- Video: soma em textbox label msgbox e célula de planilha excel com códigos vba
- Obter uma resposta a partir de uma caixa de mensagem
- Video: função somases em textbox label msgbox e célula de planilha excel vba
- Video: usando o msgbox no vba - parte 1
Argumento | O que isso afeta |
---|---|
Pronto | Os displays de texto Excel na caixa de mensagem |
botões | Um número que especifica quais botões (juntamente com o ícone) aparecer na caixa de mensagem (opcional) |
Título | O texto que aparece na caixa de mensagem&rsquo-s barra de título (opcional) |
Aqui está uma versão simplificada da sintaxe da função MsgBox:
MsgBox (linha de [, botões] [, título])
Exibir uma caixa de mensagem simples
Você pode usar a função MsgBox de duas maneiras:
Video: Excel Macros (VBA) - Aula 1 - Introdução e MSGBOX
Para mostrar simplesmente uma mensagem para o usuário: Neste caso, você não se preocupam com o resultado retornado pela função.
Video: Soma em Textbox Label Msgbox e Célula de Planilha Excel com códigos VBA
Para obter uma resposta do usuário: Neste caso, você se preocupam com o resultado retornado pela função. O resultado depende do botão que o usuário clica.
Se você usar a função MsgBox, por si só, não inclua parênteses em torno dos argumentos. O exemplo a seguir simplesmente exibe uma mensagem e não retorna um resultado. Quando a mensagem é exibida, o código pára até que o usuário clica em OK.
MsgBox MsgBoxDemo () Sub “Clique em OK para começar a imprimir.” Sheets ( “Resultados”). PrintOutEnd Sub
Olhe abaixo para ver como esta caixa de mensagem parece. Neste caso, a impressão começa quando o usuário clica em OK. Você percebe que não há nenhuma maneira de cancelar a impressão? Continue lendo para descobrir como consertar isso.
Obter uma resposta a partir de uma caixa de mensagem
Se você exibir uma caixa de mensagem que tem mais do que apenas um botão OK, você provavelmente vai querer saber qual botão o usuário clica. Você está com sorte. A função MsgBox pode retornar um valor que representa qual botão é clicado. Você pode atribuir o resultado da função MsgBox a uma variável.
Video: Função Somases em Textbox Label Msgbox e Célula de Planilha Excel VBA
No código a seguir, algumas constantes embutidas são usados que tornam mais fácil trabalhar com os valores devolvidos pelo MsgBox:
Sub getAnswer () Dim Ans Como Longans = MsgBox ( “Comece a imprimir?”, VbYesNo) Select Case AnsCase vbYesActiveSheet.PrintOutCase vbNoMsgBox “Impressão cancelada” SelectEnd End Sub
Constante | Valor | O que faz |
---|---|---|
vbOKOnly | 0 | Exibe único botão OK. |
vbOKCancel | 1 | Exibe botões OK e Cancelar. |
vbAbortRetryIgnore | 2 | Displays Abortar, repetir, e botões Ignorar. |
vbYesNoCancel | 3 | Exibe Sim, Não, e cancelar botões. |
vbYesNo | 4 | Exibe botões Sim e não. |
vbRetryCancel | 5 | Displays Repetir e Cancelar. |
vbCritical | 16 | Mostra o ícone Mensagem crítica. |
vbQuestion | 32 | Exibe ícone Consulta aviso. |
vbExclamation | 48 | Exibe ícone de mensagem de aviso. |
vbInformation | 64 | Exibe o ícone Informação Mensagem. |
vbDefaultButton1 | 0 | O primeiro botão é padrão. |
vbDefaultButton2 | 256 | Segundo botão é padrão. |
vbDefaultButton3 | 512 | Terceiro botão é padrão. |
vbDefaultButton4 | 768 | Quarto botão é padrão. |
Confira como parece. Quando você executa esse procedimento, a variável Ans é atribuído um valor de qualquer vbYes ou vbNo, dependendo de qual botão o usuário clica. A declaração Select Case usa o valor de Ans para determinar qual ação o código deve executar.
Video: Usando o MsgBox no VBA - Parte 1
Você também pode usar o resultado da função MsgBox sem o uso de uma variável, como demonstra o seguinte exemplo:
Sub GetAnswer2 () If MsgBox ( “Iniciar impressão?”, VbYesNo) = vbYes depois ‘... [código se Sim é clicado] ... Else‘... [código se Sim não é clicado] ... End Sub IfEnd