Cavalcante Consultores – treinamento e consultoria em finanças e Excel

Select Case

Cavalcante Consultores > Biblioteca de Excel > Select Case

O que é?

No VBA, a estrutura Select Case busca uma variável definida dentro de uma lista de conjuntos possíveis. Se a variável pertencer aquele conjunto, o código imediatamente abaixo de Case é executado, então a instrução é fechada com End Select.

Select Case [variável]
 
 Case [conjunto 1]
    [código executado caso a variável pertença ao conjunto 1]
      .
      .
      .
 Case [conjunto N]
    [código executado caso a variável pertença ao conjunto N]
 Case Else
    [código executado caso a variável não pertença a nenhum conjunto]

End Select

A variável é o valor que queremos comparar, pode ser um valor numérico ou texto.
Os conjuntos podem ser:

Você pode usar múltiplos conjuntos dentro de uma única instrução Case, separando os por vírgula (Ex: Case 1, 2, 3, 5 to 10, Is > 16, Is < 20). Case Else é opcional e permite que um conjunto alternativo de instruções seja executado caso a variável não pertença a nenhum conjunto anterior. End Select encerra o bloco de código.

Note que se a variável pertencer a mais de um conjunto, somente os códigos do primeiro conjunto que coincida serão executados. Após encontrar uma coincidência, a instrução ignora todos os outros conjuntos, pulando direto para End Select.

Exemplo

Neste exemplo, faremos um cálculo fictício de imposto de renda. Suponha que a tabela de imposto de renda seja esta:

Nossa variável é o salário.
Cada faixa salarial é um conjunto.

Observe o código:

Select Case salario

  Case Is <= 1200
           taxa = 0
  Case 1201 To 2500
           taxa = 2
  Case 2501 To 5000
           taxa = 4
  Case Is > 5000
           taxa = 6
       
End Select

No código acima, o salário será comparado com cada faixa do Imposto de Renda, quando o salário estiver dentro de uma faixa, a taxa é definida e a instrução pula para End Select encerrando o procedimento.

Pratique!