Resumen — El botón Ordenar de la cinta reorganiza tus filas reales; la función
SORTdevuelve una copia ordenada que se reordena cada vez que cambia el origen. Sintaxis:=SORT(matriz; [índice_orden]; [orden]; [por_col]). La regla que pilla a todos:índice_ordenes un número de columna, no una letra —SORT(data; 2; -1)ordena por la 2.ª columna, descendente; fuera de rango da#VALUE!. Para ordenar por una clave que no está en tu salida, no la fuerces en el índice — usaSORTBY. Excel 365 y 2021+.
=SORT(Sales) ' copia ordenada, por la primera columna, ascendente
=SORT(Sales, 2, -1) ' por la 2.ª columna, descendente
=SORTBY(Names, Scores, -1) ' nombres ordenados por una columna de puntos no mostrada
Ordenar solía significar seleccionar el rango, hacer clic en Ordenar y reescribir
permanentemente el orden de tus filas — bien una vez, doloroso cuando los datos
siguen llegando. La función SORT le da la vuelta: deja el origen intacto y te
entrega una vista viva y ordenada que nunca se queda anticuada.
Nota: en una interfaz de Excel en español la función se llama ORDENAR, y SORTBY es ORDENARPOR. Relacionadas: FILTER = FILTRAR, UNIQUE = UNICOS. Las fórmulas de abajo usan los nombres en inglés; el comportamiento es idéntico.
Lo que aprenderás
- Por qué
SORTes una copia viva y el botón de la cinta una reescritura de una vez - La regla de
índice_orden: es un número de columna, y qué significa#VALUE! - Ordenar por varias columnas a la vez
- Cuándo
SORTBYes la herramienta correcta en lugar deSORT - El patrón vivo
=SORT(UNIQUE(FILTER(...)))para paneles y desplegables
El modelo mental: una copia ordenada, no una reescritura
El botón Ordenar de la cinta es destructivo y manual: reordena físicamente
las filas que seleccionaste y no tiene memoria — añade una fila mañana y vuelves a
ordenar. La función SORT es un espejo con orden: lee el origen, devuelve una
copia ordenada en su propio rango de derrame y reordena en cuanto el origen cambia.
Tus datos originales se quedan en el orden en que llegaron, lo cual importa cuando
ese orden significa algo (secuencia de entrada, una columna de ID) o cuando el
origen es una tabla a la que sigues añadiendo filas.
' El origen A2:C100 queda tal como se introdujo; esto derrama una vista ordenada en otro lugar:
=SORT(A2:C100, 3, -1) ' por la columna 3 (la 3.ª columna), de mayor a menor
La regla que pilla a todos: índice_orden es un número
índice_orden le dice a SORT por qué columna ordenar — y es un número de
posición dentro de la matriz, contando desde 1, no la letra de columna de la hoja.
Si tu matriz es A2:C100, entonces 1 es la columna A, 2 es B, 3 es C. Pide
una columna que no exista en la matriz y obtienes #VALUE!:
=SORT(A2:C100, 2) ' por la 2.ª columna de la matriz (B), ascendente
=SORT(A2:C100, 4) ' -> #VALUE! la matriz solo tiene 3 columnas
orden es 1 para ascendente (predeterminado) y -1 para descendente — no las
palabras «asc»/«desc». Ten claros esos dos hechos y el 90 % de los errores de
SORT desaparecen. El cuarto argumento, por_col, lo cambia todo a ordenar
columnas de izquierda a derecha en vez de filas de arriba abajo; rara vez lo
necesitarás.
Ordenar por varias columnas a la vez
Los ordenamientos reales suelen ser de varias claves: primero región, luego importe dentro de cada región. Pasa matrices entre llaves tanto para el índice como para el orden:
' Por la columna 1 ascendente, luego la columna 3 descendente en los empates:
=SORT(Sales, {1, 3}, {1, -1})
Las dos listas {...} se corresponden posición a posición: la columna 1 recibe
orden 1 (ascendente), la columna 3 recibe orden −1 (descendente). Una clave
primaria y otra secundaria en una sola fórmula — lo que el cuadro de diálogo de la
cinta te hace configurar a través de tres desplegables.
Cuándo recurrir a SORTBY en su lugar
Esta es la distinción que decide qué función usar. SORT solo puede ordenar por
una columna que esté dentro de la matriz que devuelve. SORTBY separa lo que
muestras de aquello por lo que ordenas — así puedes ordenar una lista de
nombres por una columna de puntuación que no quieres mostrar:
' SORT no lo hace limpiamente — la clave (Scores) no está en la salida (Names):
=SORTBY(Names, Scores, -1) ' nombres, clasificados por puntos, puntos ocultos
' Ordenar por dos claves externas:
=SORTBY(Names, Region, 1, Hire_Date, 1) ' por región, luego fecha de contratación
El criterio: si tu clave de orden es una columna que ya estás devolviendo, SORT
con índice es lo más simple. En cuanto quieras ordenar por algo que no está en la
salida — o por una expresión como SORTBY(data, LEFT(Code, 2)) —, deja de pelear
con el índice de columna de SORT y cambia a SORTBY. Forzar una clave externa
dentro de SORT es la razón más común por la que la gente decide «SORT no puede
hacer lo que necesito», cuando en realidad querían SORTBY desde el principio.
El patrón vivo: SORT envolviendo a UNIQUE y FILTER
SORT es la capa más externa de la fórmula más útil del Excel moderno. Combínala
con UNIQUE y
FILTER y una sola expresión produce una lista
limpia, ordenada y que se mantiene sola:
=SORT(UNIQUE(FILTER(Customer, Region = "West")))
FILTER selecciona, UNIQUE deduplica, SORT ordena — y todo se vuelve a
ejecutar cuando entra una venta. Es la fuente estándar de un desplegable dinámico
(apunta la Validación de datos al derrame con #) o de una lista de panel que se
mantiene sola. Sin reordenar a mano, sin botón de actualizar, sin macros.
Cómo ayuda ExcelMaster
La mayoría de las peticiones de ordenamiento son en realidad «muéstrame esto,
clasificado, y mantenlo así» — cuentas top por saldo, tickets abiertos del más
antiguo primero, una clasificación. ExcelMaster escribe la fórmula correcta —
SORT con el índice numérico y el orden correctos, o SORTBY cuando la clave está
fuera de la salida — a partir de una descripción en lenguaje natural, y deja la
vista viva en la pestaña que indiques. Tú describes la clasificación; él acierta el
índice, el -1 y las llaves de varias claves.
Preguntas frecuentes
¿Cuál es la diferencia entre SORT y el botón Ordenar?
La función SORT devuelve una copia ordenada en un rango nuevo y reordena
automáticamente cuando cambia el origen, sin tocar tus datos originales. El botón
Ordenar de la cinta reescribe permanentemente el orden de las filas que
seleccionaste y hay que reejecutarlo tras cada cambio de datos.
¿Cómo ordeno por varias columnas con la función SORT?
Pasa el índice y el orden como matrices entre llaves: =SORT(data; {1; 2}; {1; -1})
ordena por la primera columna ascendente y luego por la segunda descendente en los
empates.
¿Cuál es la diferencia entre SORT y SORTBY?
SORT ordena una matriz por una de sus propias columnas (referida por número).
SORTBY ordena una matriz por una o más matrices o expresiones independientes,
de modo que puedes ordenar por una clave que no forma parte del resultado mostrado.
¿Por qué SORT devuelve #VALUE!?
Normalmente porque índice_orden apunta a una columna que no existe en la matriz —
cuenta posiciones dentro de la matriz desde 1, no letras de columna de la hoja.
Comprueba que el índice esté dentro del número de columnas que pasaste.
Probado en
Probado en: Excel 365 (Windows 11) — última verificación 16-06-2026.
Guías relacionadas: Excel FILTER · Excel UNIQUE · XLOOKUP en Excel
