Como escrever uma declaração de caso em vba (com exemplo)
Uma instrução case é um tipo de instrução que percorre as condições e retorna um valor quando a primeira condição é atendida.
Você pode usar a seguinte sintaxe básica para escrever uma instrução case em VBA:
SubCaseStatement () Dim i As Integer For i = 2 To 9 Select Case Range(" B " & i).Value Case Is >= 30 result=" Great " Box Is >= 20 result = " Good " Case Is >= 15 result=" OK " Case Else result=" Bad " End Select Range(" C " & i).Value = result Next i End Sub
Este exemplo específico analisa cada célula no intervalo B2:B9 e retorna os seguintes valores no intervalo C2:C9 :
- “ Excelente ” se o valor da coluna B for maior ou igual a 30.
- Caso contrário, “ Bom ” se o valor na coluna B for maior ou igual a 20.
- Caso contrário, “ OK ” se o valor na coluna B for maior ou igual a 15.
- Caso contrário, “ Ruim ” se nenhuma das condições anteriores for atendida.
O exemplo a seguir mostra como usar essa sintaxe na prática.
Exemplo: Escrevendo uma declaração de caso em VBA
Digamos que temos o seguinte conjunto de dados no Excel que mostra o número de pontos marcados por diferentes jogadores de basquete:
Suponha que queiramos escrever uma declaração de caso para atribuir um valor Excelente, Bom, OK ou Ruim a cada jogador com base no número de pontos marcados.
Podemos criar a seguinte macro para fazer isso:
SubCaseStatement () Dim i As Integer For i = 2 To 9 Select Case Range(" B " & i).Value Case Is >= 30 result=" Great " Box Is >= 20 result = " Good " Case Is >= 15 result=" OK " Case Else result=" Bad " End Select Range(" C " & i).Value = result Next i End Sub
Quando executamos esta macro, recebemos a seguinte saída:
A coluna C retorna um valor Excelente, Bom, OK ou Ruim com base no valor correspondente na coluna B.
Recursos adicionais
Os tutoriais a seguir explicam como realizar outras tarefas comuns em VBA:
VBA: Como classificar uma lista de valores
VBA: Como contar valores únicos no intervalo
VBA: Como contar o número de linhas no intervalo