Lógica y control de errores

Función CAMBIAR en Excel: comparar un valor con una lista

Compara un valor con una lista de opciones y devuelve el resultado que coincide.

CAMBIAR toma una expresión y una lista de cosas a las que podría ser igual, cada una emparejada con lo que hay que devolver. Código de región a nombre de región, letra de estado a palabra de estado, número de departamento a etiqueta: cualquier momento en que estés convirtiendo un conjunto de valores en otro.

Lo que te aporta frente a SI.CONJUNTO es que lo que se comprueba se escribe una sola vez. Un SI.CONJUNTO que haga el mismo trabajo repite la referencia de celda en cada condición, y el día que esa referencia cambie hay que encontrarlas todas. CAMBIAR la nombra al principio y el resto de la fórmula es solo el mapeo.

El límite es que solo comprueba igualdad. No puede preguntar si algo supera un umbral, así que los tramos numéricos no son su trabajo: eso es SI.CONJUNTO o, mejor, una tabla de búsqueda. Usa CAMBIAR cuando los valores sean discretos y conocidos.

Sintaxis

=CAMBIAR(expresión; valor1; resultado1; [valor2; resultado2]; …; [predeterminado])

Argumentos

expresión
Obligatorio
El valor que se compara. Se escribe una vez, sigan las opciones que sigan.
valor1; resultado1
Obligatorio
Algo a lo que la expresión podría ser igual, y qué devolver cuando lo sea. La comparación es solo por igualdad.
predeterminado
Opcional
Un último argumento suelto sin valor emparejado, que se devuelve cuando no coincide nada. Sin él, una expresión sin coincidencia da #N/D.

Los datos de ejemplo

Encabezados en la fila 1, datos en A2:D5.

ABCD
1AlumnoNotaAsistenciaCurso
2Alicia Moreau820.96Finanzas
3Bruno Santos540.71Marketing
4Chen Wei910.88Finanzas
5Dana Okafor670.62Operaciones

Ejemplos resueltos

=CAMBIAR(D2; "Finanzas"; "FIN"; "Marketing"; "MKT"; "Desconocido")

Resultado: FIN

Nombre de curso a código. El último argumento suelto es el valor por defecto para lo no listado.

=CAMBIAR(D4; "Finanzas"; "FIN"; "Marketing"; "MKT"; "Desconocido")

Resultado: Desconocido

Operaciones no está en la lista, así que se ejecuta el valor por defecto.

=CAMBIAR(D3; "Finanzas"; "FIN"; "Marketing"; "MKT")

Resultado: MKT

Coincidencia directa con la segunda opción. No hace falta valor por defecto cuando algo coincide.

=CAMBIAR(VERDADERO; B2>=90; "A"; B2>=80; "B"; "Menor")

Resultado: B

El apaño para comparaciones: cambiar sobre VERDADERO y hacer que cada opción sea una condición. Funciona, pero SI.CONJUNTO lo dice más claro.

Ahora practícala

Leer sobre una fórmula no es lo mismo que escribirla. Abre el ejercicio de esta función y escríbela en una hoja real: recibirás comentarios inmediatos sobre qué celda está mal y por qué.

Abrir el ejercicio: Función CAMBIAR

Errores habituales y cómo resolverlos

#N/D

Por qué ocurre: No coincidió nada y no se indicó valor por defecto.

Cómo resolverlo: Añade un último argumento suelto. A diferencia de SI.CONJUNTO, aquí hay un valor por defecto real y no un truco con VERDADERO.

No coincide nunca con nada

Por qué ocurre: Los valores comparados difieren de forma invisible: un espacio sobrante, o un número en un lado y texto en el otro.

Cómo resolverlo: Aplica ESPACIOS al origen y comprueba que los tipos de dato coinciden. No distingue mayúsculas, pero por lo demás es exacta.

No se puede expresar una prueba de mayor que

Por qué ocurre: Por diseño solo compara igualdad.

Cómo resolverlo: Usa SI.CONJUNTO para umbrales, o la forma CAMBIAR(VERDADERO; …) si quieres todo en una función.

#¿NOMBRE?

Por qué ocurre: La versión de Excel es anterior a CAMBIAR.

Cómo resolverlo: Necesita Excel 2019 o Microsoft 365, igual que SI.CONJUNTO.

Consejos que conviene saber

  • CAMBIAR gana cuando todas las ramas comparan lo mismo; SI.CONJUNTO gana cuando cada rama hace una pregunta distinta.
  • A partir de unas seis opciones, lleva el mapeo a una tabla de dos columnas y usa BUSCARV o BUSCARX: así son datos que alguien puede editar sin tocar una fórmula.
  • El valor por defecto es un único argumento al final, no una pareja. Esa asimetría es lo que hace fácil detectar un error en el número de argumentos.
  • CAMBIAR ignora las mayúsculas, así que "finanzas" y "Finanzas" coinciden con la misma opción.

Preguntas frecuentes

¿Qué diferencia hay entre CAMBIAR y SI.CONJUNTO?

CAMBIAR compara una expresión contra una lista de valores posibles, escribiendo esa expresión una sola vez. SI.CONJUNTO evalúa una condición distinta cada vez. Usa CAMBIAR para convertir valores discretos y SI.CONJUNTO para umbrales y condiciones mixtas.

¿Puede CAMBIAR hacer comparaciones de mayor que?

Directamente no, porque solo comprueba igualdad. El apaño es =CAMBIAR(VERDADERO; A2>90; "A"; A2>80; "B"; "Otro"), cambiando sobre VERDADERO para que cada opción sea una condición. SI.CONJUNTO expresa la misma lógica con más claridad.

¿Cómo pongo un valor por defecto?

Añade un argumento extra al final sin nada emparejado. Si el número de argumentos tras la expresión es par, solo hay parejas; si es impar, el último es el valor por defecto.

Funciones relacionadas

Guías que la usan

Lecturas más largas donde esta función hace trabajo real en una hoja real.