Como personalizar as caixas de mensagem em excel 2016 vba

A flexibilidade do argumento botões VBA torna fácil de personalizar suas caixas de mensagem do Excel. Você pode escolher quais botões para exibir, determinar se um ícone aparece, e decidir qual botão é o padrão (o botão padrão é “clicado” se o usuário pressionar Enter).

Video: [VBA] Criar e configurar caixas de mensagem (Msgbox)

Você pode usar constantes internas para o argumento de botões. Se preferir, você pode usar o valor em vez de uma constante (mas usando as constantes embutidas é muito mais fácil).

Para usar mais de uma dessas constantes como um argumento, apenas conectá-los com um operador +. Por exemplo, para exibir uma caixa de mensagem com botões Sim e Não e um ícone de exclamação, use a seguinte expressão como o segundo argumento MsgBox:

Video: VBA - Como Usar Caixas de Mensagem "msgbox" no Excel 2013

vbYesNo + vbExclamation

Ou, se você preferir fazer o seu código menos compreensível, use um valor de 52 (ou seja, 4 + 48).

O exemplo a seguir usa uma combinação de constantes para exibir uma caixa de mensagem com um botão Sim e um botão Não (vbYesNo), bem como um ícone de ponto de interrogação (vbQuestion). A constante vbDefaultButton2 designa o segundo botão (Não) como o botão padrão - ou seja, o botão que é clicado se o usuário pressionar Enter. Para simplificar, essas constantes são atribuídos à variável Config e, em seguida, usar configuração como o segundo argumento na função MsgBox:



Sub GetAnswer3 () Dim configuração Como LongDim Ans Como IntegerConfig = vbYesNo + vbQuestion + vbDefaultButton2Ans = MsgBox ( “Processar o relatório mensal?”, Configuração) Se Ans = vbYes Então RunReportEnd Sub

Confira a caixa de mensagem Excel exibe quando você executar o procedimento GetAnswer3. Se o usuário clicar no botão Sim, a rotina executa o procedimento chamado RunReport. Se o usuário clicar no botão Não (ou pressiona Enter), a rotina termina com nenhuma ação. Como o argumento do título foi omitido na função MsgBox, Excel usa o título padrão, o Microsoft Excel.

argumento botões da função MsgBox determina o que aparece na caixa de mensagem.

Video: Excel, 2010, VBA, Caixa de Mensagem, MsgBox

argumento botões da função MsgBox determina o que aparece na caixa de mensagem.

A rotina seguinte é outro exemplo de utilização da função MsgBox:

Video: Excel Avançado VBA - Estrutura do IF com caixa de Mensagem Sim/Não Passo a Passo

Sub GetAnswer4 () Dim Msg As String, Título Como StringDim configuração As Integer, Ans Como IntegerMsg = “Você quer processar o relatório mensal?” Msg = Msg & vbNewLine & vbNewLineMsg = Msg & “O processamento do relatório mensal irá“Msg = Msg & “Demorar cerca de 15 minutos. It “Msg = Msg & “Irá gerar um relatório de 30 páginas para“Msg = Msg & “Todos os escritórios de vendas para o atual“Msg = Msg & “Mês.” Title = “XYZ Marketing Company” config = vbYesNo + vbQuestionAns = MsgBox (Msg, Config, Título) Se Ans = vbYes Então RunReportEnd Sub

Este exemplo demonstra uma maneira eficiente para especificar uma mensagem mais longa em uma caixa de mensagem. Uma variável (MSG) e o operador de concatenação (&) São usados ​​para construir a mensagem de uma série de declarações. A constante vbNewLine insere um caractere de quebra de linha que começa uma nova linha (usá-lo duas vezes para inserir uma linha em branco). O argumento título é usado para exibir um título diferente na caixa de mensagem. Aqui está a caixa de mensagem Excel exibe quando você executar este procedimento.

Esta caixa de diálogo, apresentada pela função MsgBox, exibe um título, um ícone, e dois botões.
Esta caixa de diálogo, apresentada pela função MsgBox, exibe um título, um ícone, e dois botões.

Você pode usar constantes (como vbYes e vbNo) para o valor de retorno de uma função MsgBox. Aqui estão algumas outras constantes.

ConstanteValorO que significa
vbOK1Usuário clicou OK.
vbCancel2Usuário clicou em Cancelar.
vbAbort3Usuário clicou Abort.
vbRetry4Usuário clicou em Repetir.
vbIgnore5Usuário clicou em Ignorar.
vbYes6Usuário clicou Sim.
vbNo7Usuário clicou No.

E isso é muito bonito tudo o que você precisa saber sobre a função MsgBox. Use as caixas de mensagem com cautela, no entanto. Geralmente não há razão para exibir caixas de mensagem que não servem de nada. Por exemplo, as pessoas tendem a ficar irritado quando vê uma caixa de mensagem a cada dia que lê Bom Dia. Obrigado por carregar a projeção orçamentária pasta de trabalho.


Publicações relacionadas