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.

144 Parte III: Conceitos de Programação

de que um aplicativo Excel bem sucedido concentra-se em tomar

decisões e agir de acordo com elas.

A estrutura If-Then tem esta sintaxe básica:

If condition Then statements (Else elsestatements)

Use a estrutura If-Then quando quiser executar, condicionalmente, uma

ou mais declarações. A cláusula opcional Else, se incluída, permite que

você execute uma ou mais declarações se a condição que estiver

testando não for verdadeira. Parece confuso? Não se preocupe: alguns

exemplos esclarecerão isso.

Exemplos de If-Then

A rotina a seguir demonstra a estrutura If-Then sem a cláusula opcional Else:

Sub GreetMe()

If Time < 0.5 Then MsgBox “Bom dia”

End Sub

O procedimento GreetMe (cumprimente-me) usa a função Time do VBA

para obter o horário do sistema. Se o horário atual do sistema for

menor que .5 (em outras palavras, antes do meio-dia), a rotina exibe

uma saudação amigável. Se Time for maior ou igual a .5, a rotina

termina e nada acontece.

Para exibir uma saudação diferente, se Time for maior que ou igual a .5,

acrescente uma outra declaração If-Then após a primeira:

Sub GreetMe2()

If Time < 0.5 Then MsgBox “Bom dia”

If Time >= 0.5 Then MsgBox “Boa tarde”

End Sub

Observe que eu usei >= (maior ou igual a) para a segunda declaração

If-Then. Isso garante que o dia inteiro está coberto. Se eu tivesse usado >

(maior que), então nenhuma mensagem apareceria se esse procedimento

fosse executado exatamente às 12 horas. Isso é bem improvável, mas com

um programa importante como esse, não quero correr quaisquer riscos.

Um exemplo de If-Then-Else

Uma outra abordagem ao problema anterior usa a cláusula Else. Eis a mesma

rotina, recodificada para usar a estrutura If-Then-Else:

Sub GreetMe3()

If Time < 0.5 Then MsgBox “Bom dia” Else _

MsgBox “Boa tarde”

End Sub

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

Saved successfully!

Ooh no, something went wrong!