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 Performed ”
End 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 Performed ”
End If
End Sub
Quando executamos esta macro, a seguinte caixa de mensagem aparece:
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