Evalúa una lista de expresiones y devuelve un tipo de datos Variant o una expresión asociada con la primera expresión de la lista que tenga el valor True.
Sintaxis
Switch(expr-1, value-1 [, expr-2, value-2 ] ... [, expr-n, value-n ] )
La sintaxis de la función CAMBIAR tiene los siguientes argumentos:
| Argumento | Descripción |
|---|---|
| expresión | Obligatorio. variable que desea evaluar. |
| value | Obligatorio. Valor o expresión que se devolverá si la expresión correspondiente es True. |
Observaciones
La lista de argumentos de la función Switch consta de pares de expresiones y valores. Las expresiones se evalúan de izquierda a derecha y se devuelve el valor asociado a la primera expresión que se evalúa como verdadera . Si las partes no están emparejadas correctamente, se produce un error en tiempo de ejecución. Por ejemplo, si expr-1 es True, Switch devuelve el valor-1. Si expr-1 es falso, pero expr-2 es verdadero, el conmutador devuelve el valor 2 y así sucesivamente.
Switch devuelve un valor nulo si:
- Ninguna de las expresiones es verdadera.
- La primera expresión verdadera tiene un valor correspondiente que es nulo.
Switch evalúa todas las expresiones, aunque solo devuelva una de ellas. Por esta razón, debe estar atento a los efectos secundarios indeseables. Por ejemplo, si la evaluación de cualquier expresión da como resultado un error de división por cero, se produce un error.
Ejemplo de consulta
| Expresión | Resultados |
|---|---|
| SELECT ProductSales.ProductID, Switch([ProductID]="PRO_XYZ1","First",[ProductID]="PRO_XYZ2","Two",[ProductID]="PRO_XYZ1","Ten") AS testSwitch FROM ProductSales; | Devuelve el "ProductID", evalúa las expresiones en la fórmula "Cambiar" y cambia los valores existentes con valores definidos para todas las expresiones "Verdadero". Por ejemplo: "PRO_XYZ1" se reemplaza por "Primero", "PRO_XYZ2" se reemplaza por "Dos" y así sucesivamente. |
Ejemplo VBA:
Nota
Los ejemplos siguientes muestran el uso de esta función en un módulo de Visual Basic para Aplicaciones (VBA). Para obtener más información sobre cómo trabajar con VBA, seleccione referencia para desarrolladores en la lista desplegable situada junto a búsqueda y escriba uno o varios términos en el cuadro de búsqueda.
En este ejemplo se usa la función CAMBIAR para devolver el nombre de un idioma que coincide con el nombre de una ciudad.
Function MatchUp (CityName As String)
Matchup = Switch(CityName = "London", "English", _
CityName = "Rome", "Italian", _
CityName = "Paris", "French")
End Function