Vba: como criar uma caixa de mensagem com respostas sim/não


Você pode usar a seguinte sintaxe no VBA para criar uma caixa de mensagem para um usuário selecionar Sim ou Não:

 Sub MsgBoxYesNo()

    'ask user if they want to multiply two cells
    UserResponse = MsgBox(" Do you want to multiply cells A1 and B1? ", vbYesNo)

    'perform action based on user response
    If UserResponse = vbYes Then
      Range(" C1 ") = Range(" A1 ") * Range(" B1 ")
    Else
      MsgBox “ No Multiplication was PerformedEnd If

End Sub

Esta macro específica cria uma caixa de mensagem que pergunta ao usuário se ele deseja multiplicar as células A1 e B1.

Se o usuário clicar em “Sim”, ambas as células serão multiplicadas e o resultado será exibido na célula C1.

Se o usuário clicar em “Não”, uma nova caixa de mensagem aparecerá informando que nenhuma multiplicação foi realizada.

Observe que a instrução vbYesNo é o que insere os botões “Sim” e “Não” para o usuário clicar.

Os exemplos a seguir mostram como usar essa sintaxe na prática.

Exemplo: Crie uma caixa de mensagem com respostas Sim/Não

Suponha que temos os dois valores a seguir nas células A1 e B1 de nossa planilha Excel:

Digamos que queremos criar uma macro que exiba uma caixa de mensagem ao usuário e pergunte se ele deseja ou não multiplicar os valores das células A1 e B1.

Podemos criar a seguinte macro para fazer isso:

 Sub MsgBoxYesNo()

    'ask user if they want to multiply two cells
    UserResponse = MsgBox(" Do you want to multiply cells A1 and B1? ", vbYesNo)

    'perform action based on user response
    If UserResponse = vbYes Then
      Range(" C1 ") = Range(" A1 ") * Range(" B1 ")
    Else
      MsgBox “ No Multiplication was PerformedEnd If

End Sub

Quando executamos esta macro, a seguinte caixa de mensagem aparece:

Caixa de mensagens VBA sim ou não

Se clicarmos em Sim , a macro multiplicará os valores nas células A1 e B2 e exibirá o resultado na célula C1:

Porém, se clicarmos em Não , uma nova caixa de mensagem aparecerá:

A caixa de mensagem informa que nenhuma multiplicação foi realizada desde que clicamos em Não na caixa de mensagem anterior.

Recursos adicionais

Os tutoriais a seguir explicam como realizar outras tarefas comuns em VBA:

VBA: Como adicionar uma nova linha à caixa de mensagem
VBA: Como adicionar novas planilhas
VBA: Como congelar painéis

Add a Comment

O seu endereço de email não será publicado. Campos obrigatórios marcados com *