24.08.2020 Views

Programando o Excel ® Vba Para Leigos - 2ª Ed 2013 NoDRM (1)

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Capítulo 15: Caixas de Diálogo Simples

239

Constante Valor O Que Ela Faz

vbRetryCancel 5 Exibe os botões Retry e Cancel.

vbCritical 16 Exibe o ícone Mensagem Crítica.

vbQuestion 32 Exibe o ícone Consulta de Aviso.

vbExclamation 48 Exibe o ícone Mensagem de Aviso.

vbInformation 64 Exibe o ícone Mensagem de Informação.

vbDefaultButton1 0 O botão padrão é o primeiro.

vbDefaultButton2 256 O botão padrão é o segundo.

vbDefaultButton3 512 O botão padrão é o terceiro.

vbDefaultButton4 768 O botão padrão é o quarto.

Para usar mais de uma destas constantes como um argumento, basta

conectá-las a um operador +. Por exemplo, para exibir uma caixa de mensagem

com Sim e Não e um ícone de ponto de exclamação, use a seguinte

expressão como o segundo argumento de MsgBox:

vbYesNo + vbExclamation

Ou, se você preferir tornar o seu código menos compreensível, use um

valor de 52 (isto é, 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),

assim 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 – isto é, o botão que é clicado se o usuário pressionar

Enter. Para simplificar, eu atribuí essas constantes à variável Config e

depois, usei Config como o segundo argumento na função MsgBox.

Sub GetAnswer3()

Dim Config As Integer

Dim Ans As Integer

Config = vbYesNo + vbQuestion + vbDefaultButton2

Ans = MsgBox(“Emitir o relatório mensal?”, Config)

If Ans = vbYes Then RunReport

End Sub

A Figura 15-3 mostra a caixa de mensagem que o Excel exibe quando

você executa o procedimento GetAnswer3. Se o usuário clicar o botão

Sim, a rotina executa o procedimento chamado RunReport (que não é

mostrado). Se o usuário clicar o botão Não (ou pressionar Enter), a

rotina termina sem ação. Pelo fato de que eu omiti o argumento título

na função MsgBox, o Excel usa o título padrão, Microsoft Excel.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!