Hay tres funciones que puedes utilizar para ordenar y filtrar datos de forma automática:
Para obtener más información sobre cada función, haz clic en los
enlaces que aparecen a continuación para ver el contenido de ayuda de
esta página.
Filtro
Funciones:
=Filter(matrizOrigen, condiciónMatriz)
=Filter(matrizOrigen, condiciónMatriz1, condiciónMatriz2, ...)
Esta función devuelve una versión filtrada de la matriz origen
determinada, donde sólo se han incluido determinadas filas o columnas.
A continuación se muestran algunas sugerencias que se deben tener en
cuenta al utilizar esta función:
- Cada condición debe ser un rango de valores booleanos de una
dimensión o una expresión de fórmulas de matriz que evalúa hasta una
matriz de booleanos de una dimensión.
- Si las condiciones evalúan hasta una matriz de columnas, sólo se
devolverán las filas de la matriz de origen que se corresponden con los
valores verdaderos de la matriz de condición.
- Si las condiciones evalúan hasta una matriz de filas, sólo se
devolverán las columnas de la matriz de origen que se corresponden con
los valores verdaderos de la condición.
- Si hay varias condiciones, todas deben ser verdaderas para los
valores correspondientes de la matriz de origen que se van a devolver.
El comportamiento es similar a =ArrayFormula(IF(condiciónOrigen, matrizOrigen,
"")), a excepción de que el filtro omitirá las filas o columnas en
lugar de dejarlas en blanco. Además, el filtro puede filtrar un rango
completo que se basa en una única fila o columna en lugar de requerir
los dos argumentos para que sean dos rangos de igual tamaño. (La matriz
origen no se trata como una fórmula de matriz, aunque puedes hacerlo si
la ajustas en su propia función ArrayFormula()).
Ejemplos:
- =Filter(A1:A10, B1:B10>10) devuelve una matriz de todos los
valores de la columna A que se encuentran al lado de los valores de la
columna B que son superiores a 10.
- =Filter(A1:B10, B1:B10>10) hace lo mismo pero devuelve los valores de las columnas A y B.
- =Filter(A1:B10, B1:B10>10, A1:A10<B1:B10) también requiere
que los valores de la columna A sean más pequeños que los valores de la
columna B.
Único
Función:
=Unique(matrizOrigen)
Esta función sólo devuelve las filas únicas de la matriz origen y
descarta los duplicados. Las filas se devuelven en función del orden en
que aparecen por primera vez en la matriz origen.
Ejemplos:
- =Unique({1;3;5;3;7;1;2}) devuelve los valores {1; 3; 5; 7; 2}.
- =Unique(A1:A10) devuelve los valores de A1:A10.
- =Unique(A1:B10) devuelve todas las filas únicas desde A1:B10.
Ordenar
Funciones:
=Sort(datos)
=Sort(datos, columnaClave1, ascODesc1, columnaClave2, ascODesc2, ...)
Esta función devuelve las filas de un rango de datos determinado,
ordenado en función de las columnas claves determinadas. A continuación
se muestran algunas sugerencias que se deben tener en cuenta al
utilizar esta función:
- Puedes especificar la columna clave de dos modos: como una columna
dentro del rango de datos o como otra columna fuera del rango. Para
especificar una columna dentro del rango de datos, dale un índice (*
¿qué es esto) dentro del rango: 1 es la primera columna del rango, 2 es
la segunda columna, etc. Para especificar otra columna fuera del rango
(por ejemplo: un valor calculado intermedio que no quieres incluir en
el resultado de salida), especifícalo como un rango.
- Marca cada columna clave para ordenarla de forma ascendente o
descendente. Para ello, se debe agregar TRUE o FALSE después de
especificar la columna clave.
- También puedes especificar una única matriz o un único rango. En
ese caso, la función devuelve el rango ordenado de forma ascendente con
las columnas de izquierda a derecha.
Ejemplos:
- =Sort(A1:A10) devuelve los valores desde A1:A10, ordenados de menor a mayor.
- =Sort(A1:A10, 1, FALSE) devuelve los valores desde A1:A10, ordenados de mayor a menor.
- =Sort(A1:A10, B1:B10, TRUE) devuelve los valores desde A1:A10, ordenados en función de los datos de la columna B.
- =Sort(A1:B10, B1:B10, TRUE) devuelve el rango completo A1:B10, ordenado en función de los datos de la columna B.
- =Sort(A1:B10, 2, TRUE) devuelve lo mismo ya que B1:B10 es la segunda columna de A1:B10.
- =Sort(A1:B10) ordena el rango completo A1:B10, en primer lugar en
función de los datos de la columna A (ascendente) y, a continuación,
rompe vínculos en función de la columna B (ascendente).
- =Sort(A1:B10, 1, FALSE, B11:B20, TRUE) ordena en función de A1:A10
descendente y, a continuación, rompe vínculos ordenando en función de
B11:B20 ascendente.
- =Sort(A1:B10, 1, TRUE, B11:B20, FALSE) ordena en función de B1:B10
ascendente y, a continuación, rompe vínculos ordenando en función de
B11:B20 descendente.
Si uno de los índices de columna es menor que 1 o mayor que el
número de columnas del rango de datos, se ignorará el índice de
columnas (junto con el valor ascendente o descendente, si lo hay). Así
podrás configurar fórmulas que se ordenen en función de un número
variado de columnas como, por ejemplo:
=Sort(A1:B10, C1, C2, C3) ordenará en función de los ID de la
columna especificados en C1, C2 y C3. Para ordenar en función de sólo
una columna, rellena una de las celdas y deja las otras dos vacías (o
introduce un 0 en ellas). |