Funciones FILA y COLUMNA en Excel

Usa FILA y COLUMNA en Excel para numerar filas que se ajustan solas, sombrear filas alternas y montar un top N. Guía con FILAS, COLUMNAS y ejemplos.

fxBlog

Funciones FILA y COLUMNA en Excel

Usa FILA y COLUMNA en Excel para numerar filas que se ajustan solas, sombrear filas alternas y montar un top N. Guía con FILAS, COLUMNAS y ejemplos.

Listo·Alejandro·17 min de lectura·Actualizado 9 Oct 2026

Si alguna vez has tenido que numerar manualmente las filas de una tabla en Excel y luego has borrado una fila a mitad de la lista, ya sabes el problema: los números se descuadran y tienes que corregirlos uno a uno. La función FILA en Excel resuelve esto de raíz, porque en lugar de escribir un número fijo, le pide a la celda que calcule su propia posición dentro de la hoja. Junto a su hermana COLUMNA, y a las primas FILAS y COLUMNAS, forman un grupo de funciones estructurales que casi nadie explica bien, pero que están detrás de trucos muy potentes: numeración automática, rankings dinámicos con K.ESIMO.MAYOR, formato condicional tipo cebra o localizador de posiciones con COINCIDIR.

En esta guía vas a ver, con ejemplos reales y fórmulas listas para copiar, qué devuelve exactamente cada una de estas cuatro funciones, en qué se diferencian FILA de FILAS (el error de confusión más habitual), y cómo combinarlas con otras funciones para automatizar tareas repetitivas que de otro modo tendrías que rehacer a mano cada vez que cambian los datos. También verás los errores más comunes al arrastrar estas fórmulas y las diferencias al trabajar en Google Sheets.

Todas las fórmulas están escritas en español con punto y coma como separador de argumentos, tal y como las verás si tu Excel está configurado en español de España. Empecemos por la base: qué es exactamente lo que devuelven FILA y COLUMNA.

Funciones FILA y COLUMNA en Excel
Funciones FILA y COLUMNA en Excel

¿Qué son las funciones FILA y COLUMNA en Excel?

La función FILA devuelve el número de fila de una referencia, y la función COLUMNA devuelve el número de columna de una referencia. No hacen ningún cálculo sobre el contenido de la celda: solo informan de su posición dentro de la hoja de cálculo. Por ejemplo, la celda C5 está en la fila 5 y en la columna 3 (A=1, B=2, C=3), así que =FILA(C5) devuelve 5 y =COLUMNA(C5) devuelve 3.

Sintaxis de FILA()

La sintaxis es =FILA(referencia), donde el argumento referencia es opcional. Si escribes =FILA() sin ningún argumento dentro de una celda, la función devuelve el número de fila de la propia celda donde está escrita la fórmula. Esta es la versión que más se usa en la práctica, porque permite que la fórmula «sepa» en qué fila vive sin que tengas que indicárselo.

Sintaxis de COLUMNA()

COLUMNA funciona en espejo: =COLUMNA(referencia) devuelve el número de columna de esa referencia, y =COLUMNA() sin argumento devuelve la columna de la celda actual. Se usa mucho menos que FILA en el día a día, pero es igual de útil cuando trabajas con tablas horizontales, por ejemplo para numerar meses en columnas o para construir fórmulas que se arrastran hacia la derecha en lugar de hacia abajo.

FórmulaResultadoExplicación
=FILA(C5)5C5 está en la fila 5
=FILA()Número de la fila actualSi la fórmula está en A10, devuelve 10
=COLUMNA(C5)3C es la tercera columna
=COLUMNA()Número de la columna actualSi la fórmula está en D1, devuelve 4
💡
El truco de no poner argumentoCuando escribes =FILA() o =COLUMNA() sin nada dentro del paréntesis, Excel entiende que quieres la posición de la propia celda donde escribes la fórmula. Es la base de casi todos los trucos de este artículo: numeración automática, series, patrones alternos y rankings dinámicos.

FILAS y COLUMNAS: contar cuántas filas o columnas tiene un rango

Aquí está la confusión número uno con estas funciones: FILA (singular) devuelve un número de posición, mientras que FILAS (plural) devuelve una cantidad. La función FILAS cuenta cuántas filas contiene un rango, y COLUMNAS cuenta cuántas columnas contiene ese rango. No dicen dónde está nada: solo cuentan el tamaño.

Por ejemplo, =FILAS(A1:A10) devuelve 10, porque ese rango abarca diez filas, sin importar en qué fila de la hoja empiece o termine. De la misma forma, =COLUMNAS(A1:F1) devuelve 6, porque hay seis columnas entre la A y la F. Estas dos funciones son muy útiles para calcular el tamaño de una tabla, validar que dos rangos tienen las mismas dimensiones antes de compararlos, o construir fórmulas que se adaptan automáticamente cuando la tabla crece o se reduce.

Cuándo usar FILAS en vez de FILA

Usa FILA cuando necesites saber en qué fila concreta de la hoja está algo, por ejemplo para numerar o para recuperar una posición absoluta. Usa FILAS cuando necesites saber cuántas filas de datos tienes en total, por ejemplo para contar registros, para dimensionar un rango dinámico o para saber hasta dónde llega una lista antes de aplicarle otra fórmula.

FórmulaResultadoQué mide
=FILAS(A1:A10)10Número de filas del rango
=COLUMNAS(A1:F1)6Número de columnas del rango
=FILAS(TablaVentas)Nº de registrosTamaño de una tabla con nombre
📌
FILA no es lo mismo que FILASFILA devuelve una posición («esto está en la fila 8»); FILAS devuelve una cantidad («este rango tiene 8 filas»). Confundir las dos es el error más habitual al aprender estas funciones, y suele dar resultados absurdos como intentar sumar cien celdas cuando en realidad querías saber en qué fila estaba un dato.

Numerar filas automáticamente con FILA()-1 (y por qué es mejor que escribir 1, 2, 3…)

El uso más popular de FILA con diferencia es la numeración automática de una lista o tabla. Si escribes los números 1, 2, 3… a mano en una columna, en cuanto elimines o insertes una fila en medio de la tabla, la numeración se rompe: quedan huecos, duplicados o un orden que ya no coincide con las filas reales. La solución es dejar que la propia fila calcule su número.

La fórmula: =FILA()-1

Si tu tabla tiene los encabezados en la fila 1 y los datos empiezan en la fila 2, la fórmula =FILA()-1 escrita en la celda de la fila 2 devuelve 1, en la fila 3 devuelve 2, y así sucesivamente. La lógica es sencilla: le restas a la fila real el número de filas de encabezado que tienes por encima, para que el primer registro empiece siempre en 1.

  1. Escribe =FILA()-1 en la primera celda de datos (por ejemplo B2, si el encabezado está en la fila 1).
  2. Arrastra o copia la fórmula hacia abajo hasta el final de la tabla.
  3. Comprueba que la numeración empieza en 1 y avanza de uno en uno sin saltos.
  4. Si eliminas una fila, la numeración se recalcula sola al instante; si insertas una fila nueva en medio, copia la fórmula en ella (o usa una tabla de Excel con Ctrl+T, que la rellena automáticamente).

La ventaja frente a escribir los números manualmente es que la fórmula se ajusta sola. Si eliminas la fila 5 de tu tabla, la fila que antes era la 6 pasa a ser la 5, y como =FILA()-1 vuelve a calcularse en su nueva posición, el número que muestra también baja automáticamente. Con números escritos a mano tendrías que corregir toda la lista posterior una por una. Este comportamiento está directamente relacionado con cómo Excel recalcula las referencias al insertar y eliminar filas, un tema que cubrimos con más detalle en esta guía sobre insertar y eliminar filas y columnas en Excel.

MétodoAl insertar/eliminar filasMantenimiento
Escribir 1, 2, 3 a manoSe descuadra, hay que corregir a manoAlto: revisar toda la columna cada vez
=FILA()-1Al eliminar, se recalcula solo; al insertar, hay que copiar la fórmula en la fila nuevaMínimo: arrastrar una vez (y copiar la fórmula en las filas que insertes)
⚠️
Ajusta el -1 según tu encabezadoEl -1 de la fórmula depende de cuántas filas de encabezado tengas por encima de los datos. Si tu tabla empieza en la fila 3 en lugar de la 2, tendrás que usar =FILA()-2 para que el primer registro siga mostrando 1. Si más adelante mueves la tabla entera a otra posición, recuerda revisar este número de nuevo.

Crear listas de números y series con FILA

Más allá de numerar filas del 1 en adelante, FILA sirve como generador de secuencias para construir listas de números, fechas o patrones repetitivos sin escribir nada a mano. Como cada celda de una columna tiene un número de fila distinto, puedes usar ese número como semilla de cualquier cálculo que necesite un contador que avance automáticamente al arrastrar la fórmula.

Por ejemplo, =FILA()*5 genera la serie 5, 10, 15, 20… si la escribes en filas consecutivas empezando en la fila 1. Para generar una lista de fechas consecutivas a partir de una fecha inicial fija, puedes escribir algo como =FECHA(2026;1;1)+FILA()-2 (ajustando la resta según la fila donde empiece tu lista), de modo que cada fila añada un día más a la fecha de partida.

Patrones repetitivos: agrupar cada N filas

Combinando FILA con ENTERO y RESIDUO puedes crear patrones que se repiten cada cierto número de filas, algo útil para agrupar registros en bloques o para asignar un número de grupo a lotes de datos. La fórmula =ENTERO((FILA()-2)/3)+1, escrita desde la fila 2, asigna el número 1 a las tres primeras filas de datos, el número 2 a las tres siguientes, y así sucesivamente.

Usar FILA como el argumento k de K.ESIMO.MAYOR para un top N dinámico

Uno de los trucos más rentables de FILA es convertir un ranking estático en uno dinámico que se actualiza solo al arrastrar la fórmula. La función K.ESIMO.MAYOR devuelve el k-ésimo valor más grande de un rango: el primero, el segundo, el tercero… Normalmente tendrías que escribir ese k a mano en cada fila del ranking, pero si usas FILA()-1 como argumento k, cada fila calcula automáticamente el puesto que le corresponde.

La fórmula típica para un top N es =K.ESIMO.MAYOR($B$2:$B$50;FILA()-1), escrita en la primera fila del ranking (por ejemplo, en la fila 2, donde FILA()-1 vale 1, así que devuelve el valor más alto). Al arrastrarla hacia abajo, la siguiente fila calcula FILA()-1=2 y devuelve el segundo valor más alto, la siguiente el tercero, y así sucesivamente hasta donde quieras llegar.

Fila de la fórmulaFILA()-1Qué devuelve K.ESIMO.MAYOR
Fila 21El valor más alto del rango
Fila 32El segundo valor más alto
Fila 43El tercer valor más alto
Fila 1110El décimo valor más alto (top 10)

Si necesitas también el nombre asociado a cada puesto (por ejemplo, el producto más vendido, no solo la cifra de ventas), combina esta fórmula con INDICE y COINCIDIR, tal como se explica en la guía completa de K.ESIMO.MAYOR en Excel, donde se detalla cómo montar un ranking completo con nombre y valor en la misma fila.

⚠️
Ancla siempre el rango con signos de dólarSi el rango de datos $B$2:$B$50 no lleva los signos de dólar ($), al arrastrar la fórmula hacia abajo el rango se desplazará junto con la fórmula y el ranking dará resultados incorrectos o errores #¡NUM!. El argumento k (FILA()-1) sí debe quedar sin anclar, para que avance en cada fila; lo que hay que fijar es únicamente el rango de datos.

Filas alternas tipo cebra con RESIDUO(FILA();2) en formato condicional

El sombreado de filas alternas (conocido como efecto cebra) suele aplicarse con un estilo de tabla predefinido, pero cuando quieres controlar exactamente qué filas se sombrean, o aplicar el efecto sobre un rango que no es una tabla, la solución más flexible es una regla de formato condicional basada en fórmula, usando RESIDUO y FILA.

La función RESIDUO(número;divisor) devuelve el resto de una división. Si divides el número de fila entre 2, el resto solo puede ser 0 (fila par) o 1 (fila impar). La fórmula =RESIDUO(FILA();2)=0 aplicada como regla de formato condicional sombrea todas las filas pares, y si la cambias a =1 sombrea las impares.

Para configurarlo, selecciona el rango de datos, abre Formato condicional > Nueva regla > Utilice una fórmula que determine las celdas para aplicar formato, escribe =RESIDUO(FILA();2)=0 y elige el color de relleno que quieras. En esta guía de formato condicional en Excel tienes el paso a paso completo con capturas, incluidas otras reglas basadas en fórmula además del efecto cebra.

💡
Que el sombreado empiece siempre en la primera fila de datosSi tu tabla no empieza en la fila 1 o 2, el patrón puede arrancar sombreando la fila equivocada. Para forzar que la primera fila de datos sea siempre la que se pinte, usa =RESIDUO(FILA()-FILA($A$2);2)=0, donde $A$2 es la primera celda de datos: así el patrón se ancla a tu tabla en lugar de a la hoja completa.

COINCIDIR + FILA para encontrar la posición real de un dato

La función COINCIDIR devuelve la posición relativa de un valor dentro del rango en el que buscas, no su fila real en la hoja. Si buscas un valor dentro de A2:A100, y ese valor está en la quinta celda del rango, COINCIDIR devuelve 5, aunque esa celda esté físicamente en la fila 6 de la hoja. Para recuperar la fila real, sumas la posición relativa a la fila donde empieza el rango, usando FILA.

La fórmula completa es =COINCIDIR(valor;A2:A100;0)+FILA(A2)-1. Aquí, FILA(A2) devuelve 2 (la fila donde arranca el rango de búsqueda), y al restar 1 compensas el hecho de que COINCIDIR ya cuenta esa primera celda como posición 1. El resultado es el número de fila exacto donde está el dato, útil para combinarlo después con funciones como DESREF.

Este patrón es especialmente útil cuando combinas COINCIDIR con INDICE para hacer búsquedas más flexibles que BUSCARV, ya que te permite construir referencias dinámicas basadas en la fila real del dato encontrado. Puedes ver el desarrollo completo de este tipo de búsquedas en la guía de INDICE y COINCIDIR en Excel.

Rangos que crecen al arrastrar: conteo acumulado con CONTAR.SI.CONJUNTO

Otro uso menos conocido de FILA es construir rangos que crecen automáticamente fila a fila a medida que arrastras una fórmula hacia abajo, típico en fórmulas de conteo acumulado o de detección de duplicados. Un rango como $A$2:A2, escrito en la fila 2 y arrastrado hacia abajo, se convierte en $A$2:A3 en la fila 3, $A$2:A4 en la fila 4, y así sucesivamente: el extremo inicial queda fijo y el final avanza con cada fila.

Esto se aprovecha muy bien con CONTAR.SI.CONJUNTO para contar cuántas veces ha aparecido un valor hasta esa fila (y no en toda la columna), lo que sirve para detectar la primera aparición de un duplicado o para numerar ocurrencias: =CONTAR.SI.CONJUNTO($A$2:A2;A2;$B$2:B2;B2). En esta guía de CONTAR.SI.CONJUNTO en Excel tienes más ejemplos de condiciones múltiples que puedes combinar con este tipo de rango creciente.

Si en lugar de un conteo acumulado necesitas saber cuántos registros hay en total, ahí es donde vuelve a entrar FILAS: úsala para dimensionar el rango completo antes de aplicar CONTAR.SI.CONJUNTO sobre toda la tabla, en vez de sobre un trozo que crece.

Errores comunes al usar FILA y COLUMNA

  1. Confundir FILA con FILAS (o COLUMNA con COLUMNAS): la primera da una posición, la segunda una cantidad.
  2. Olvidar anclar con $ el rango de datos al arrastrar fórmulas con K.ESIMO.MAYOR, COINCIDIR o CONTAR.SI.CONJUNTO, lo que desplaza el rango junto con la fórmula.
  3. Usar =FILA()-1 sin ajustar el número si el encabezado de la tabla no está en la fila 1, lo que descuadra la numeración desde el principio.
  4. Pasar un rango completo a FILA (por ejemplo =FILA(A1:A10)) esperando el número de filas: en Excel 2019 y anteriores devuelve solo la fila de la primera celda del rango (1), y en Excel 365 devuelve una matriz con todas las filas ({1;2;…;10}) que se derrama; en ningún caso es la cantidad de filas, para eso usa FILAS.
  5. No tener en cuenta que insertar una fila de encabezado nueva desplaza todos los -1 o -2 de las fórmulas de numeración que dependían de la posición anterior.

FILA y COLUMNA en Google Sheets

Las cuatro funciones se comportan exactamente igual en Google Sheets que en Excel: FILA() y COLUMNA() devuelven la posición de una celda, y FILAS() y COLUMNAS() devuelven el tamaño de un rango. Todos los trucos de este artículo (numeración automática, top N con K.ESIMO.MAYOR, cebra con RESIDUO, COINCIDIR + FILA) funcionan igual, sin cambios en la lógica.

La única diferencia real está en el separador de argumentos: Google Sheets usa por defecto la coma (,) en lugar del punto y coma (;), salvo que tengas configurado el idioma de la hoja en español, en cuyo caso también usará punto y coma como Excel. Si copias una fórmula de este artículo a una hoja de Sheets en inglés y te da error, simplemente cambia los puntos y comas por comas.

📌
Mismo comportamiento, distinto separadorEn Google Sheets, FILA se escribe igual en español (o ROW en inglés) y funciona de forma idéntica a Excel. Si tu hoja está en inglés, sustituye el punto y coma por coma: =ROW()-1 en vez de =FILA()-1.
¿Numeras listas a mano?

Nuestras plantillas ya traen la numeración automática. Descárgalas gratis.

Ver la plantilla →

Preguntas habituales

¿Cuál es la diferencia entre FILA y FILAS en Excel?
FILA devuelve el número de fila de una celda concreta (una posición), mientras que FILAS devuelve cuántas filas tiene un rango (una cantidad). Por ejemplo, =FILA(A5) da 5, y =FILAS(A1:A5) da 5 también en este caso, pero por motivos completamente distintos: uno indica dónde está, el otro cuántas hay.
¿Cómo numero filas automáticamente en Excel para que no se descuadren al borrar una fila?
Usa la fórmula =FILA()-1 (ajustando el número según cuántas filas de encabezado tengas encima) en la primera celda de la columna de numeración, y arrástrala hacia abajo. Al eliminar filas, cada celda recalcula su propia posición y la numeración se mantiene correlativa sin que tengas que tocar nada; al insertar una fila nueva, copia la fórmula en ella (o usa una tabla de Excel, que la rellena sola).
¿Por qué mi fórmula =FILA(A1:A10) me devuelve 1 en lugar del número de filas del rango?
Porque en versiones sin matrices dinámicas (Excel 2019 y anteriores) FILA con un rango devuelve solo la fila de su primera celda, mientras que en Excel 365 devuelve una matriz con cada fila del rango (de 1 a 10) que se derrama; en ningún caso devuelve la cantidad de filas. Para contar cuántas filas tiene ese rango necesitas la función FILAS (en plural): =FILAS(A1:A10) sí devuelve 10.
¿Puedo usar FILA para generar una lista de números o una serie de fechas?
Sí. Como cada celda tiene un número de fila distinto, puedes multiplicarlo, sumarlo o combinarlo dentro de otra fórmula para generar secuencias: =FILA()*5 crea una serie de múltiplos de 5, y =FECHA(2026;1;1)+FILA()-2 genera fechas consecutivas a partir de una fecha inicial.
¿Cómo hago un top 10 dinámico que se actualice solo con FILA y K.ESIMO.MAYOR?
Escribe =K.ESIMO.MAYOR($B$2:$B$50;FILA()-1) en la primera fila del ranking, con el rango de datos anclado con signos de dólar, y arrástrala hacia abajo diez filas. Cada fila calculará automáticamente el puesto que le corresponde (1º, 2º, 3º…) sin que tengas que escribir el número k a mano.
¿Cómo sombreo filas alternas con una fórmula en lugar de aplicar un estilo de tabla?
Aplica una regla de formato condicional basada en fórmula con =RESIDUO(FILA();2)=0 para las filas pares (o =1 para las impares) sobre el rango de tu tabla. Es más flexible que un estilo predefinido porque puedes combinarlo con otras condiciones o aplicarlo sobre rangos que no son tablas formales.
¿Funciona FILA igual en Google Sheets que en Excel?
Sí, el comportamiento es idéntico. La única diferencia habitual es el separador de argumentos: si tu hoja de Google Sheets está en inglés, usa comas en lugar de punto y coma, por ejemplo =ROW()-1 en vez de =FILA()-1.
Si elimino la fila de encabezado, ¿deja de funcionar =FILA()-1?
No deja de funcionar, pero el resultado cambia: al eliminar el encabezado, todas las filas de datos suben una posición, la primera pasa a la fila 1 y =FILA()-1 devolvería 0, así que la numeración empezaría en 0; tendrías que cambiar la fórmula a =FILA() para que vuelva a empezar en 1. Si en cambio añades una fila de encabezado extra, tendrás que ajustar el -1 a -2 para que el primer registro siga mostrando el número correcto.

Lo esencial

FILA, COLUMNA, FILAS y COLUMNAS no calculan nada sobre tus datos, pero son la base de un buen número de automatizaciones que ahorran tiempo real: numeración que se autocorrige, rankings que se generan solos al arrastrar, sombreados que se adaptan al tamaño de la tabla y localizadores de posición que combinan bien con INDICE y COINCIDIR. Una vez entiendes la diferencia entre una posición (FILA) y una cantidad (FILAS), el resto de trucos son variaciones sobre la misma idea: dejar que la fórmula calcule su propio contexto en lugar de escribirlo a mano.

El siguiente paso natural es aplicar estas ideas sobre tablas reales: prueba a sustituir cualquier numeración manual que tengas por =FILA()-1, monta un ranking dinámico con K.ESIMO.MAYOR, y añade una regla de formato condicional con RESIDUO(FILA();2) a la próxima tabla larga que construyas.

Excel® es una marca registrada de Microsoft Corporation. Este sitio no está afiliado a Microsoft.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *