Fórmula genérica
=BUSCARX(1,(rng1="red")*(rng2>100),results)
Explicación
Para usar BUSCARX con múltiples lógicas, construya expresiones con lógica booleana y luego busque el número 1. En el ejemplo, BUSCARX se usa para buscar la primera venta a Chicago por más de $ 250. La fórmula en G6 es:
=BUSCARX(1,(D5:D14="chicago")*(E5:E14>250),B5:B14)
que devuelve 0347, el número de pedido del primer registro que cumple con los criterios suministrados.
Nota BUSCARX no distingue entre mayúsculas y minúsculas.
Cómo funciona esta fórmula
BUSCARX puede manejar matrices de forma nativa, lo que lo convierte en una función muy útil al construir criterios basados en múltiples expresiones lógicas.
En el ejemplo que se muestra, estamos buscando el número de pedido del primer pedido a Chicago por más de $ 250. Estamos construyendo una matriz de búsqueda utilizando la siguiente expresión y lógica booleana:
(D5:D14="chicago")*(E5:E14>250)
Cuando se evalúa esta expresión, primero obtenemos dos matrices de valores VERDADERO FALSO como esta:
{FALSO;FALSO;VERDADERO;FALSO;FALSO;FALSO;FALSO;VERDADERO;FALSO;FALSO}* {FALSO;FALSO;FALSO;VERDADERO;VERDADERO;VERDADERO;FALSO;VERDADERO;FALSO;FALSO}
Cuando las dos matrices se multiplican entre sí, la operación matemática da como resultado una matriz única de 1 y 0 como este:
{0;0;0;0;0;0;0;1;0;0}
Ahora tenemos la siguiente fórmula, y puede ver por qué estamos usando 1 para el valor de búsqueda:
=BUSCARX(1,{0;0;0;0;0;0;0;1;0;0},B5:B14)
BUSCARX coincide con el 1 en la 8ª posición y devuelve el 8º valor correspondiente de B5: B14, que es 0347.
Con un solo criterio
Como se vio anteriormente, las operaciones matemáticas coaccionan automáticamente los valores VERDADERO y FALSO a 1 y 0. Por lo tanto, cuando se usan múltiples expresiones, un valor de búsqueda de 1 tiene sentido. En los casos en que solo tiene un criterio único, por ejemplo, "cantidad> 250", puede buscar VERDADERO en su lugar de esta manera:
=BUSCARX(VERDADERO,E5:E14>250,B5:B14)
Alternativamente, puede forzar los valores VERDADERO FALSO a 1 y 0, y usar 1 como este.
=BUSCARX(1,--(E5:E14>250),B5:B14)
0 comentarios:
Publicar un comentario