Introdução
Você já se deparou com a necessidade de exibir uma mensagem pop-up em uma planilha do Excel? Se sim, provavelmente já ouviu falar do MsgBox. O MsgBox é uma função do Visual Basic for Applications (VBA) que permite exibir mensagens personalizadas para o usuário e capturar sua resposta. Neste artigo, vamos explorar como usar a função MsgBox no Excel, mais especificamente a versão com a opção vbYesNoCancel, que exibe os botões Sim, Não e Cancelar.
1. O que é o MsgBox?
Antes de mergulharmos na versão específica do MsgBox com a opção vbYesNoCancel, é importante entender o que é essa função e como ela funciona. O MsgBox é um comando do VBA que permite exibir uma mensagem para o usuário em uma caixa de diálogo pop-up. Essa mensagem pode ser informativa ou conter uma pergunta que requer uma resposta do usuário. O MsgBox também pode exibir botões que permitem ao usuário fazer uma escolha ou fornecer uma resposta.
2. Sintaxe básica do MsgBox
A sintaxe básica para usar o MsgBox é a seguinte:
“`vba
MsgBox(prompt, [buttons], [title])
“`
Onde:
- prompt: é o texto que aparecerá na caixa de diálogo;
- buttons: é um argumento opcional que determina quais botões serão exibidos na caixa de diálogo; e
- title: é um argumento opcional que define o título da caixa de diálogo.
3. Utilizando a opção vbYesNoCancel
Agora que você já entende o básico do MsgBox, vamos nos concentrar na versão que exibe os botões Sim, Não e Cancelar. Para usar essa opção, você precisa definir o argumento buttons como vbYesNoCancel. Veja o exemplo abaixo:
“`vba
MsgBox “Você deseja salvar as alterações?”, vbYesNoCancel, “Confirmação”
“`
No exemplo acima, a mensagem exibida será “Você deseja salvar as alterações?. Os botões Sim, Não e Cancelar serão exibidos e o título da caixa de diálogo será definido como “Confirmação”.
4. Capturando a resposta do usuário
Após exibir a caixa de diálogo MsgBox, você pode usar a resposta do usuário em seu código VBA. Para isso, você precisa atribuir o valor retornado pelo MsgBox a uma variável. Veja o exemplo abaixo:
“`vba
Dim resposta As Integer
resposta = MsgBox(“Você deseja salvar as alterações?”, vbYesNoCancel, “Confirmação”)
If resposta = vbYes Then
‘ Código para salvar as alterações
ElseIf resposta = vbNo Then
‘ Código para não salvar as alterações
ElseIf resposta = vbCancel Then
‘ Código para cancelar
End If
“`
No exemplo acima, a resposta do usuário é atribuída à variável “resposta”. Em seguida, é feita uma verificação condicional para determinar qual código será executado, dependendo da resposta do usuário.
5. Tabela de botões disponíveis
Valor | Botão |
---|---|
vbOKOnly | OK |
vbOKCancel | OK, Cancelar |
vbAbortRetryIgnore | Abortar, Tentar Novamente, Ignorar |
vbYesNoCancel | Sim, Não, Cancelar |
vbYesNo | Sim, Não |
vbRetryCancel | Tentar Novamente, Cancelar |
A tabela acima mostra alguns dos valores possíveis para o argumento “buttons” do MsgBox, juntamente com os botões correspondentes que serão exibidos na caixa de diálogo.
6. Conclusão
O MsgBox com a opção vbYesNoCancel é uma ferramenta útil para solicitar confirmações ou decisões aos usuários no Excel. Com a possibilidade de personalizar as mensagens e exibir os botões adequados, você pode melhorar a experiência do usuário e tornar suas planilhas mais interativas. Lembre-se sempre de capturar a resposta do usuário e ajustar seu código de acordo. Agora que você conhece o básico do MsgBox com a opção vbYesNoCancel, experimente aplicá-lo em suas próprias planilhas e aproveite os benefícios.