¿Cómo usar la función Switch en VBA?

La función Switch en Visual Basic for Applications (VBA) se utiliza para una lista de expresiones y devuelve un valor asociado con la primera expresión que se evalúa como True. Funciona de manera similar a una serie de If… ElseIf… Else pero de una forma más compacta y a menudo más legible, especialmente cuando se tiene una lista sustancial de condiciones.

Ejemplo

VBA

Dim result As String

result = Switch(
    condition1, "Resultado 1",
    condition2, "Resultado 2",
    condition3, "Resultado 3",
    ' ...
    conditionN, "Resultado N"
)

MsgBox result

En el ejemplo anterior, condition1, condition2, condition3, …, conditionN son expresiones booleanas. La función Switch examinará cada condición en el orden en que se presentan y devolverá el valor asociado con la primera condición que se evalúe como True. Si ninguna de las condiciones es verdadera y no se ha proporcionado un valor True predeterminado, Switch devolverá Null.

Ejemplo 2

VBA

Sub ExampleSwitch()
    Dim score As Integer
    Dim grade As String
    
    ' Imagina que tenemos una puntuación:
    score = 85
    
    ' Usamos Switch para asignar una calificación basada en la puntuación:
    grade = Switch(
        score >= 90, "A",
        score >= 80, "B",
        score >= 70, "C",
        score >= 60, "D",
        score < 60, "F"
    )
    
    ' Mostramos la calificación:
    MsgBox "La calificación es: " & grade
End Sub

En este ejemplo, si score es 85, la función Switch comprobará las condiciones una por una. La primera condición que resulta cierta es score >= 80, por lo que la función devolverá «B» y eso es lo que se asignará a la variable grade.

Recuerda que, si bien la función Switch puede hacer que tu código sea más limpio y más fácil de leer, no es adecuada para todas las situaciones y estructuras lógicas. Para algunos casos, especialmente si tienes acciones específicas que ejecutar en lugar de valores para devolver, usar If… ElseIf… Else o Select Case puede ser más apropiado.

Conoce nuestra tienda

Ver más productos

Mejora tu nivel y logra tus objetivo

Excel

Excel cursos

Access

cursos de Access

Power BI

cursos power BI

Ayúdanos a hacer crecer el proyecto

¡Únete a nuestro Grupo de Facebook!

Deja un comentario