Tengo un rango en Excel (B3: C8) desde el cual quiero filtrar a los ingleses. En SQL esto sería muy simple:
SELECT Persons FROM [myTable] WHERE Nationality = 'English'
¿Cómo puedo aplicar un filtro similar en un rango donde el resultado no es un solo valor sino un rango?
Nota: Excel tiene un botón Filtro, pero todo lo que hace es OCULTAR las filas no deseadas. No quiero filas ocultas.
Así es como quiero que se vea mi mesa. ¿Cómo debería ser la fórmula de G3?
fuente
Ingrese esto en G3 y arrastre hacia abajo. Es una fórmula matricial, por lo que debe ingresarse usando
Ctrl Shft Enter
Tenga en cuenta que IfError solo está disponible en XL 2007/10, de lo contrario, deberá usar:
fuente
Esta versión funcionará en cualquier versión de Excel y da los resultados en el orden en que aparecen
En G3:
=IF(ROWS(G$3:G3)>COUNTIF(C$3:C$8,E$3),"",INDEX(B$3:B$8,SMALL(IF(C$3:C$8=E$3,ROW(C$3:C$8)-ROW(C$3)+1),ROWS(G$3:G3))))
confirmado con CTRL + MAYÚS + ENTRAR (presionados juntos) y copiado hasta donde sea necesario
fuente
Una forma sería usar esta declaración IF = IF ($ E $ 3 = C3, B3, "") que le daría el nombre de las personas si la Nacionalidad coincide con el filtro o un espacio en blanco si no es así.
fuente
=If($E$3=English,B3,"")
Puedes hacer esto más generalizado haciendo:
=If($E$3=C3,B3,"")
fuente