Resumen —
MAX.SI.CONJUNTO(rango_máx; rango_criterios1; criterios1; …)devuelve el valor más grande derango_máx, mirando solo las filas que pasan todas las condiciones;MIN.SI.CONJUNTOdevuelve el más pequeño. SonMAX/MINcon un portero en la puerta — solo se cuentan las filas que cumplen. Reemplazan la incómoda fórmula matricial{=MAX(SI(…))}por una función normal y corriente.
=MAX.SI.CONJUNTO(C2:C100; A2:A100; "West") ' la venta más alta del Oeste
=MIN.SI.CONJUNTO(C2:C100; A2:A100; "West"; B2:B100; ">="&E1) ' la más baja que además cumple una fecha/umbral
=MAX.SI.CONJUNTO(C2:C100; D2:D100; "Closed") ' la mayor operación cerrada
Si alguna vez echaste mano de una fórmula matricial con Ctrl+Mayús+Entrar para obtener «el valor más alto donde región = West», MAX.SI.CONJUNTO es la función que dejó eso obsoleto. Pertenece a la misma familia que SUMAR.SI.CONJUNTO, CONTAR.SI.CONJUNTO y PROMEDIO.SI.CONJUNTO — la misma sintaxis de criterios, la misma lógica Y — así que si conoces una, casi las conoces todas.
Nota: en la interfaz de Excel en español estas funciones se llaman MAX.SI.CONJUNTO y MIN.SI.CONJUNTO, y los códigos de error aparecen como #N/D y #¡VALOR!. Funciones relacionadas:
SUMAR.SI.CONJUNTO(SUMIFS),CONTAR.SI.CONJUNTO(COUNTIFS),PROMEDIO.SI.CONJUNTO(AVERAGEIFS),SI(IF),FECHA(DATE),AGREGAR(AGGREGATE). Los ejemplos de esta guía ya usan los nombres en español; el comportamiento es idéntico al inglés.
Lo que aprenderás
- El modelo mental: MAX/MIN filtrados por condiciones
- El orden de argumentos que hace tropezar a quienes usan
SUMAR.SI(el rango de resultado va primero) - Cómo funcionan los criterios — las mismas reglas de texto que CONTAR.SI/SUMAR.SI.CONJUNTO
- Por qué reemplazan a la vieja fórmula matricial
{=MAX(SI(…))} - La trampa del 0 silencioso cuando ninguna fila coincide, y cómo atraparla
El modelo mental: MAX/MIN con un filtro delante
El MAX normal mira todos los números de un rango. MAX.SI.CONJUNTO le pone un filtro delante: «encuentra el valor más grande — pero solo en las filas que satisfacen estas condiciones». Todo lo demás se deduce de esa única idea.
=MAX.SI.CONJUNTO(C2:C100; A2:A100; "West"; B2:B100; ">100")
' ▲ encuentra aquí el máximo ▲ pero solo donde región="West" Y importe>100
Varias condiciones se combinan con Y — una fila debe pasarlas todas para ser tenida en cuenta, exactamente igual que SUMAR.SI.CONJUNTO y CONTAR.SI.CONJUNTO. No hay opción O integrada; para O tomarías el MAX de dos llamadas separadas a MAX.SI.CONJUNTO, o reestructurarías los datos.
El orden de argumentos que hace tropezar
Este es el detalle que atrapa a todo el que viene de SUMAR.SI o CONTAR.SI: en la
familia .SI.CONJUNTO, el rango que mides va primero y luego los pares de
criterios:
=MAX.SI.CONJUNTO(rango_máx; rango_criterios1; criterios1; [rango_criterios2; criterios2]; …)
' ▲ resultado ▲ donde… ▲ es igual ▲ y donde… ▲ es igual
Compáralo con las funciones más antiguas de una sola condición, donde el rango que sumar es el último argumento, opcional:
=SUMAR.SI(rango_criterios; criterios; [rango_suma]) ' rango de resultado AL FINAL
=MAX.SI.CONJUNTO(rango_máx; rango_criterios; criterios) ' rango de resultado PRIMERO
Esa incoherencia entre SUMAR.SI y las funciones .SI.CONJUNTO es una verruga
genuina de Excel, y es el error nº1 de MAX.SI.CONJUNTO: poner el rango de criterios
donde debería ir el rango del máximo. Memorízalo una vez — las funciones
.SI.CONJUNTO siempre empiezan por el rango del que quieres una respuesta — y deja
de morder.
Los criterios funcionan igual que en CONTAR.SI y SUMAR.SI.CONJUNTO
No hay nada nuevo que aprender sobre las condiciones en sí. Los criterios se escriben
como cadenas de texto, los operadores van dentro de las comillas y una referencia de
celda se une con & — las mismas reglas que
CONTAR.SI y
SUMAR.SI.CONJUNTO:
=MAX.SI.CONJUNTO(C2:C100; C2:C100; ">0") ' el mayor valor positivo
=MAX.SI.CONJUNTO(C2:C100; B2:B100; ">"&E1) ' umbral desde la celda E1
=MAX.SI.CONJUNTO(C2:C100; A2:A100; "West*") ' comodín en criterio de texto
=MIN.SI.CONJUNTO(D2:D100; A2:A100; "West"; C2:C100; ">="&FECHA(2026;1;1)) ' a prueba de fechas
Si ya construyes criterios para CONTAR.SI o SUMAR.SI.CONJUNTO, aquí los construyes
igual — comillas alrededor de los operadores, & para inyectar el valor de una
celda, FECHA() para comparaciones de fechas a prueba de idioma.
Por qué reemplazaron a la fórmula matricial
Antes de Excel 2019, «máximo condicional» significaba una fórmula matricial introducida con Ctrl+Mayús+Entrar:
{=MAX(SI(A2:A100="West"; C2:C100))} ' forma antigua — fórmula matricial CSE
=MAX.SI.CONJUNTO(C2:C100; A2:A100; "West") ' forma nueva — una función normal
La forma antigua funciona, pero arrastra un lastre real: tienes que acordarte de la entrada con llaves, es opaca para el siguiente lector y es fácil romperla si la editas sin volver a introducirla como matriz. MAX.SI.CONJUNTO reduce todo eso a una función normal que cualquiera puede leer y editar. Este es el sentido entero de la función — un resultado que podrías calcular por la vía ingeniosa, escrito en cambio por la vía aburrida y duradera.
Una nota de versión: MAX.SI.CONJUNTO y MIN.SI.CONJUNTO requieren Excel 2019 o
Microsoft 365. En Excel 2016 y anteriores no existen, y recurres a la fórmula
matricial {=MAX(SI(…))} o a un enfoque basado en
AGREGAR.
La trampa del 0 silencioso
Este es el modo de fallo que corrompe informes en silencio. Cuando ninguna fila
cumple las condiciones, MAX.SI.CONJUNTO y MIN.SI.CONJUNTO devuelven 0 — no
#N/D, ni un blanco, ni un error.
=MAX.SI.CONJUNTO(C2:C100; A2:A100; "Antarctica") ' no existe esa región -> 0
Si tus datos pueden contener negativos (temperaturas, pérdidas y ganancias,
ajustes), ese 0 es una mentira: parece un máximo legítimo situado por encima de
tus valores negativos reales, o un mínimo legítimo por debajo de tus positivos.
Nadie ve un error, así que nadie comprueba. Protégete comprobando primero si alguna
fila coincidió:
=SI(CONTAR.SI.CONJUNTO(A2:A100;"West")=0; "No data"; MAX.SI.CONJUNTO(C2:C100; A2:A100; "West"))
Usa CONTAR.SI.CONJUNTO con las mismas condiciones para preguntar «¿coincidió algo?» antes de fiarte del número. Es la única comprobación que separa una fórmula de máximo condicional robusta de una que informa en silencio de un 0 como si fuera un valor real.
El criterio
MAX.SI.CONJUNTO y MIN.SI.CONJUNTO son la respuesta correcta casi siempre que sientas
la tentación de escribir {=MAX(SI(…))}. A la fórmula matricial le quedan
exactamente dos justificaciones: estás en Excel 2016 o anterior, o necesitas lógica
O entre condiciones que la familia .SI.CONJUNTO, solo con Y, no puede expresar.
Todo lo demás — una o varias condiciones Y, umbrales desde celdas, rangos de fechas
— pertenece a MAX.SI.CONJUNTO/MIN.SI.CONJUNTO, porque una función normal que la
siguiente persona puede leer y editar gana a una fórmula matricial ingeniosa
siempre. Solo que nunca te fíes del resultado en bruto con datos que pueden ser
negativos hasta que hayas confirmado que existe una coincidencia. Interioriza esos
dos hábitos — rango de resultado primero, protege el 0 de «sin coincidencia» — y los
extremos condicionales dejan de ser una fuente de errores silenciosos y sin señalar.
Cómo ayuda ExcelMaster
Las dos formas en que MAX.SI.CONJUNTO sale mal — el orden de argumentos invertido y
el 0 silencioso cuando no hay coincidencia — son justo las cosas de las que una
fórmula nunca te avisa. ExcelMaster acierta en ambas automáticamente: pone el
rango de resultado primero, construye los criterios con las mismas reglas de & y
FECHA() que tu SUMAR.SI.CONJUNTO y envuelve la fórmula en una comprobación de
coincidencia para que un resultado vacío se lea «No data» en lugar de un 0 engañoso.
Pide «el pedido más grande de la región Oeste este año» o «el precio más bajo por
proveedor», y devuelve un máximo condicional que puedes poner directamente en un
informe — incluida la protección que probablemente habrías olvidado.
Preguntas frecuentes
¿Cómo uso MAX.SI.CONJUNTO en Excel?
=MAX.SI.CONJUNTO(rango_máx; rango_criterios1; criterios1; …) devuelve el valor más
grande de rango_máx entre las filas que cumplen todas las condiciones. Por ejemplo,
=MAX.SI.CONJUNTO(C2:C100; A2:A100; "West") da el valor más alto de la columna C
donde la columna A es igual a "West". MIN.SI.CONJUNTO funciona igual para el valor
más pequeño.
¿Por qué MAX.SI.CONJUNTO devuelve 0?
Porque ninguna fila cumplió tus condiciones — MAX.SI.CONJUNTO y MIN.SI.CONJUNTO
devuelven 0 (no un error) cuando nada califica. En datos con valores negativos,
esto parece un resultado real. Comprueba primero con
CONTAR.SI.CONJUNTO:
=SI(CONTAR.SI.CONJUNTO(…)=0;"No data";MAX.SI.CONJUNTO(…)).
¿Cuál es el orden de argumentos de MAX.SI.CONJUNTO frente a SUMAR.SI?
MAX.SI.CONJUNTO (como todas las funciones .SI.CONJUNTO) pone el rango de
resultado primero: MAX.SI.CONJUNTO(rango_máx; rango_criterios; criterios). La
más antigua SUMAR.SI pone el rango de resultado al final:
SUMAR.SI(rango_criterios; criterios; [rango_suma]). Confundirlos es el error más
común.
¿Puede MAX.SI.CONJUNTO usar varias condiciones?
Sí. Añade más pares rango_criterios; criterios — se combinan con Y, así que una
fila debe satisfacer todas las condiciones para ser tenida en cuenta:
=MAX.SI.CONJUNTO(C:C; A:A; "West"; B:B; ">100"). No hay O integrado; para O, toma
el MAX de llamadas separadas a MAX.SI.CONJUNTO.
¿Qué puedo usar en lugar de MAX.SI.CONJUNTO en Excel 2016?
MAX.SI.CONJUNTO necesita Excel 2019 o Microsoft 365. En Excel 2016 usa la fórmula
matricial {=MAX(SI(condición; rango))} introducida con Ctrl+Mayús+Entrar, o una
fórmula basada en AGREGAR.
Probado en
Probado en: Excel 365 (Windows 11) — última verificación el 08/07/2026.
Guías relacionadas: Excel SUMAR.SI.CONJUNTO · Excel CONTAR.SI.CONJUNTO · Excel PROMEDIO.SI.CONJUNTO · Excel AGREGAR
