¿Cómo usar la declaración Select Case en VBA?

La declaración `Select Case` en VBA (Visual Basic for Applications) se utiliza para tomar decisiones en función del valor de una expresión. Es una alternativa más elegante y legible a múltiples declaraciones `If…Then…Else` cuando estás comparando la misma expresión contra diferentes valores. A continuación, te mostraré cómo usar `Select Case` con un ejemplo sencillo:

Estructura Básica de `Select Case`

Select Case expresión
    Case valor1
        ' Bloque de código a ejecutar si expresión = valor1
    
    Case valor2
        ' Bloque de código a ejecutar si expresión = valor2
    
    Case Else
        ' Bloque de código a ejecutar si ninguna de las condiciones anteriores se cumple
End Select

Ejemplo Práctico

Supongamos que queremos evaluar el valor de una variable llamada `díaDeLaSemana` y ejecutar diferentes bloques de código según el día específico:

Sub EvaluarDiaDeSemana()
    
    Dim díaDeLaSemana As Integer
    díaDeLaSemana = 3 ' Por ejemplo, 3 representa miércoles
    
    Select Case díaDeLaSemana
        Case 1
            MsgBox "Hoy es lunes."
        Case 2
            MsgBox "Hoy es martes."
        Case 3
            MsgBox "Hoy es miércoles."
        Case 4
            MsgBox "Hoy es jueves."
        Case 5
            MsgBox "Hoy es viernes."
        Case 6
            MsgBox "Hoy es sábado."
        Case 7
            MsgBox "Hoy es domingo."
        Case Else
            MsgBox "Valor no válido para un día de la semana."
    End Select
    
End Sub

Detalles Importantes:

  • Expresión: Esta es la variable o expresión que estás evaluando. En el ejemplo, es `díaDeLaSemana`.
  • Case: Cada `Case` representa un posible valor que la expresión puede tener. Puedes utilizar rangos o listas separadas por comas, por ejemplo, `Case 1, 3 To 5, 7`.
  • Case Else: Es opcional, pero recomendable. Se ejecuta si ninguna de las condiciones especificadas se cumple.
  • Flexibilidad: `Select Case` no solo evalúa números, también puede evaluar cadenas u otros tipos de datos siempre que la expresión inicial se pueda comparar con un valor literal o una constante.

Usar `Select Case` es especialmente útil para código que necesita evaluar muchas condiciones posibles, mejorando la legibilidad y organización del mismo.

Unlock Your Potential

Excel

Basic - Advanced

Access

Access Basic - Advanced

Power BI

Power BI Basic - Advanced

Help us grow the project