
Fórmula genérica
=XLOOKUP(1,--EXACT(range1,"RED"),range2)
Resumen
Para crear una coincidencia exacta que distinga entre mayúsculas y minúsculas, puede utilizar la función XLOOKUP con la función EXACT. En el ejemplo que se muestra, la fórmula en F5 es:
=XLOOKUP(1,--EXACT(B5:B15,"RED"),B5:D15)
que coincide con "RED" (distingue entre mayúsculas y minúsculas) y devuelve la fila completa.
Explicación
Por sí misma, la función XLOOKUP no distingue entre mayúsculas y minúsculas. Un valor de búsqueda de "ROJO" coincidirá con "rojo", "ROJO" o "Rojo". Podemos solucionar esta limitación construyendo una matriz de búsqueda adecuada para XLOOKUP con una expresión lógica.
Trabajando desde adentro hacia afuera, para darle a XLOOKUP la capacidad de hacer coincidir el caso, usamos la función EXACTA como esta:
EXACT(B5:B15,"RED") // test for "RED"
Dado que hay 11 valores en el rango E5: D15, EXACT devuelve una matriz con 11 resultados VERDADEROS FALSOS como este:
(FALSE;FALSE;FALSE;FALSE;TRUE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE)
Observe que la posición de VERDADERO corresponde a la fila donde el color es "ROJO".
Por brevedad (y para permitir que la lógica se extienda fácilmente con la lógica booleana), forzamos los valores VERDADERO FALSO a 1 y 0 con el doble negativo:
--EXACT(B5:B15,"RED") // convert to 1s and 0s
que produce una matriz como esta:
(0;0;0;0;1;0;0;0;0;0;0)
Observe que la posición de 1 corresponde a la fila donde el color es "ROJO". Esta matriz se devuelve directamente a la función XLOOKUP como argumento de matriz de búsqueda.
Ahora podemos simplemente la fórmula para:
=XLOOKUP(1,(0;0;0;0;1;0;0;0;0;0;0),B5:D15)
Con un valor de búsqueda de 1, XLOOKUP encuentra el 1 en la quinta posición y devuelve la quinta fila en la matriz de retorno, B9: D9.
Extendiendo la lógica
La estructura de la lógica se puede ampliar fácilmente. Por ejemplo, para reducir la coincidencia a "ROJO" en el mes de abril, puede utilizar una fórmula como esta:
=XLOOKUP(1,EXACT(B5:B15,"RED")*(MONTH(C5:C15)=4),B5:D15)
Aquí, debido a que cada una de las dos expresiones devuelve una matriz de valores VERDADERO FALSO, y debido a que estas matrices se multiplican juntas, la operación matemática convierte los valores VERDADERO y FALSO en 1 y 0. No es necesario utilizar el doble negativo.
Como el valor de búsqueda sigue siendo 1, como en la fórmula anterior.
Primer y último partido
Ambas fórmulas anteriores devolverán la primera coincidencia de "ROJO" en un conjunto de datos. Si necesita la última coincidencia, puede realizar una búsqueda inversa configurando el argumento del modo de búsqueda para XLOOKUP en -1:
=XLOOKUP(1,--EXACT(B5:B15,"RED"),B5:D15,,,-1) // last match
Si necesita devolver resultados de varias coincidencias, consulte la función FILTRO.