martes, 9 de junio de 2020

EXCEL: FILTRO con múltiples criterios O

Excel formula: FILTER with multiple OR criteria

Explicación

Para extraer datos con múltiples condiciones O, puede usar la función FILTRAR junto con la función COINCIDIR. En el ejemplo que se muestra, la fórmula en F9 es:
=FILTRAR(B5:D16,
ESNUMERO(COINCIDIR(items,F5:F6,0))*
ESNUMERO(COINCIDIR(colors,G5:G6,0))*
ESNUMERO(COINCIDIR(cities,H5:H6,0)))
donde los elementos (B3: B16), los colores (C3: C16) y las ciudades (D3: D16) se denominan rangos.
Esta fórmula devuelve datos donde el elemento es (camisetas O sudadera con capucha) El color Y es (rojo O azul) Y la ciudad es (denver O seattle).

Cómo funciona esta fórmula

En este ejemplo, los criterios se ingresan en el rango F5: H6. La lógica de la fórmula es:
el artículo es (camiseta O sudadera con capucha) Y color es (rojo O azul) Y ciudad es (denver O seattle)
La lógica de filtrado de esta fórmula (el argumento de inclusión) se aplica con las funciones ESNUMERO y COINCIDIR, junto con la lógica booleana aplicada en una operación de matriz.
COINCIDIR está configurado "hacia atrás", con valores de búsqueda provenientes de los datos y criterios utilizados para la matriz de búsqueda. Por ejemplo, la primera condición es que los artículos deben ser una camiseta o una sudadera con capucha. Para aplicar esta condición, COINCIDIR se configura así:
COINCIDIR(items,F5:F6,0) // check for tshirt or hoodie
Debido a que hay 12 valores en los datos, el resultado es una matriz con 12 valores como este:
{1;#N/A;#N/A;2;#N/A;2;2;#N/A;1;#N/A;2;1}
Esta matriz contiene errores # N / A (sin coincidencia) o números (coincidencia). Los números de aviso corresponden a artículos que son camiseta o sudadera con capucha. Para convertir esta matriz en valores VERDADERO y FALSO, la función COINCIDIR se ajusta en la función ESNUMERO:
ESNUMERO(COINCIDIR(items,F5:F6,0))
que produce una matriz como esta:
{VERDADERO;FALSO;FALSO;VERDADERO;FALSO;VERDADERO;VERDADERO;FALSO;VERDADERO;FALSO;VERDADERO;VERDADERO}
En esta matriz, los valores de VERDADERO corresponden a camiseta o sudadera con capucha.
La fórmula completa contiene tres expresiones como la anterior utilizada para el argumento include de la función FILTRAR:
ESNUMERO(COINCIDIR(items,F5:F6,0))* // tshirt or hoodie
ESNUMERO(COINCIDIR(colors,G5:G6,0))* // red or blue
ESNUMERO(COINCIDIR(cities,H5:H6,0))) // denver or seattle
Después de evaluar COINCIDIR y ESNUMERO, tenemos tres matrices que contienen valores VERDADERO y FALSO. La operación matemática de multiplicar estas matrices juntas obliga a los valores VERDADERO y FALSO a 1s y 0s, por lo que podemos visualizar las matrices en este punto así:
{1;0;0;1;0;1;1;0;1;0;1;1}*
{1;0;1;1;0;1;0;0;0;0;0;1}*
{1;0;1;0;0;1;0;1;1;0;0;1}
El resultado, siguiendo las reglas de la aritmética booleana, es una matriz única:
{1;0;0;0;0;1;0;0;0;0;0;1}
que se convierte en el argumento de inclusión en la función FILTRAR:
=FILTRAR(B5:D16,{1;0;0;0;0;1;0;0;0;0;0;1})
El resultado final son las tres filas de datos que se muestran en F9: H11

Con valores codificados

Aunque la fórmula en el ejemplo usa criterios ingresados ​​directamente en la hoja de trabajo, los criterios pueden codificarse como constantes de matriz como este:
=FILTRAR(B5:D16,
ESNUMERO(COINCIDIR(items,{"Tshirt";"Hoodie"},0))*
ESNUMERO(COINCIDIR(colors,{"Red";"Blue"},0))*
ESNUMERO(COINCIDIR(cities,{"Denver";"Seattle"},0)))

Comentarios en Facebook


0 comentarios:

Copyright © 2021 TRUJILLOSOFT