¿Necesitas repetir un patrón numérico —por ejemplo 1 → 10— cientos o miles de veces en una hoja de cálculo sin perder tiempo? Excel ofrece varias rutas para lograrlo, desde las nuevas funciones dinámicas de Microsoft 365 hasta métodos clásicos compatibles con versiones anteriores. A continuación encontrarás un tutorial exhaustivo, repleto de fórmulas listas para copiar, atajos y buenas prácticas que te evitarán dolores de cabeza.
Por qué usar series cíclicas en Excel
Las series que “vuelven a empezar” resultan imprescindibles en muchos contextos:
- Numera cuestionarios o boletines en lotes de 1‑10, 1‑10…
- Etiqueta turnos de personal (1 = mañana, 2 = tarde, 3 = noche…)
- Asignar lotes de producción o grupos de control en experimentos.
- Imprimir tiques o entradas con numeración repetitiva.
- Agrupar pedidos en bloques fijos (p. ej., cajas de 12 unidades).
Método moderno con funciones dinámicas (Microsoft 365 / Office 2021)
Si dispones de Excel 365 o Excel 2021, las funciones dinámicas SEQUENCE
y LET
eliminan prácticamente todo el trabajo manual.
Fórmula básica de una sola línea
=MOD(SEQUENCE(100)-1,10)+1
Cómo usarla:
- Escribe la fórmula en
A1
. - Sustituye
100
por la cantidad exacta de filas a rellenar. - Presiona Intro. El resultado “se derrama” automáticamente hasta ocupar las 100 filas, repitiendo 1‑10 tantas veces como haga falta.
Fórmula alternativa con LET
=LET(n,100, largo,10, seq,SEQUENCE(n), MOD(seq-1,largo)+1)
Esta variante mejora la legibilidad porque separa los parámetros (n
y largo
) y evita repetirlos dentro de la operación.
Desglose paso a paso
SEQUENCE(n)
genera n números consecutivos (1, 2, 3… n).- Al restar 1 obtenemos 0, 1, 2… n‑1.
MOD(…,10)
produce el residuo de cada división entre 10: 0‑9, 0‑9…- Al sumar 1 transformamos 0‑9 en 1‑10 y el ciclo vuelve a empezar.
Ajustar la longitud del patrón
Cambia simplemente el segundo argumento de MOD
. Por ejemplo:
- Patrón 1‑5:
=MOD(SEQUENCE(100)-1,5)+1
- Días del mes 1‑31:
=MOD(SEQUENCE(365)-1,31)+1
Gestionar el desbordamiento (“spill”)
Si quieres que la serie se detenga exactamente en la fila final de una tabla sin dejar celdas sobrantes:
- Convierte tu rango en Tabla (Ctrl + T).
- En la columna recién creada introduce
=MOD(SEQUENCE(COUNTA([@Columna]))-1,10)+1
, dondeCounTA
cuenta las filas reales de la tabla. - Excel expandirá la fórmula automáticamente a medida que añadas o elimines registros.
Método tradicional (Excel 2019 o versiones anteriores)
Las versiones sin funciones dinámicas requieren una fórmula incremental y el uso del controlador de relleno.
- Escribe 1 en
A1
. - En
A2
introduce=MOD(A1,10)+1
y confirma. - Selecciona la celda
A2
y arrastra el controlador de relleno (cuadro verde) hasta la fila deseada. Excel copiará la fórmula y recalculará cada fila.
El núcleo es idéntico: cada fila toma el valor anterior (A1
), calcula MOD(…,10)
y suma 1 para reiniciar el ciclo en cuanto alcanza 10.
Consejo de productividad
Si tu rango es corto, escribe manualmente los números 1‑10, selecciona las diez celdas y arrastra el controlador manteniendo presionada Ctrl. De esa forma Excel repite el patrón completo sin usar fórmulas.
Tabla comparativa de soluciones
Versión de Excel | Paso único en A1 | Resultado |
---|---|---|
Microsoft 365 / Office 2021 | =MOD(SEQUENCE(100)-1,10)+1 • Cambia 100 por el número total de filas. | Desborde automático hasta A100 con patrón 1‑10, 1‑10… |
Excel 2019 o anteriores | 1. Escribe 1 en A1 .2. En A2 : =MOD(A1,10)+1 .3. Copia/arrastra hasta la fila final. | Cada fila calcula el siguiente número del ciclo. |
Opción alternativa (365+) | =LET(seq,SEQUENCE(10), INDEX(seq, MOD(SEQUENCE(100,,0),10)+1)) | Misma lógica, con LET para mayor claridad. |
Patrones mixtos: texto y números
A veces el ciclo no es puramente numérico. Por ejemplo, “A1, B1, C1, A2, B2, C2…”. Con funciones dinámicas:
=LET(
letras,{"A","B","C"},
ciclos,SEQUENCE(100),
CONCAT(INDEX(letras, MOD(ciclos-1,3)+1) & INT((ciclos-1)/3)+1)
)
El truco consiste en desacoplar la parte alfabética (INDEX
) de la numérica (INT
) y volver a concatenarlas.
Series fechadas: ejemplo práctico
Para generar turnos semanales que se repitan cada siete días:
=TODAY()+SEQUENCE(365)-1
Luego aplica un formato personalizado [Día] "Turno"
o utiliza MOD(SEQUENCE(365),7)
para crear etiquetas 1‑7 sobre la misma lista de fechas.
Macros VBA para automatizar la tarea
Si prefieres un enfoque programático que funcione con un solo clic en cualquier libro, pega este procedimiento en un módulo estándar:
Sub RellenarPatron()
Const TopCell As String = "A1" 'Celda inicial
Const PatronLargo As Long = 10 'Longitud del ciclo
Dim TotalFilas As Long
TotalFilas = 1000 'Cambia a voluntad```
Dim i As Long
For i = 0 To TotalFilas - 1
Range(TopCell).Offset(i, 0).Value = (i Mod PatronLargo) + 1
Next i
```
End Sub
Puedes conectar la macro a un botón o llamarla desde otra rutina. Su rendimiento es óptimo incluso con decenas de miles de filas.
Rendimiento y mejores prácticas
- Evita columnas auxiliares innecesarias; las funciones dinámicas minimizan cálculos.
- Usa rangos estructurados (Tablas) para que las fórmulas se actualicen solas al agregar filas.
- Bloquea referencias (con F4) si copias fórmulas según el método tradicional; así evitas desplazamientos accidentales.
- Revisa el modo de cálculo; en libros muy grandes quizá prefieras “Manual” y recalcular al finalizar (F9).
- No mezcles tipos de datos; si el patrón es numérico, mantén la columna como número para agilizar filtros y tablas dinámicas.
Errores frecuentes y cómo solucionarlos
Mensaje o síntoma | Causa | Solución |
---|---|---|
Los números pasan de 10 a 11, 12… | Se omitió +1 o se modificó por error. | Revisa la fórmula y asegúrate de sumar 1 tras la función MOD . |
Excel muestra #SPILL! | Hay datos existentes que impiden el desbordamiento. | Limpia o desplaza los valores que bloquean la salida de la fórmula. |
La macro se detiene con error Range class failed | La celda inicial no existe (hoja distinta o eliminada). | Comprueba TopCell y ajusta la referencia. |
El patrón deja de repetirse antes de tiempo | No arrastraste hasta la última fila o el argumento SEQUENCE es menor al total deseado. | Extiende la selección o incrementa la variable n . |
Preguntas frecuentes
¿Puedo rellenar columnas alternas sin afectar otras celdas?
Sí. Selecciona primero la columna destino, presiona Ctrl mientras haces clic en las demás celdas vacías que necesitas y pega la fórmula. Excel la replicará solo en las celdas elegidas.
¿Cómo adapto el patrón a un orden descendente 10‑1, 10‑1…?
Basta con restar el resultado a 11: =11-MOD(SEQUENCE(100)-1,10)
.
¿Funciona en Google Sheets?
Sí. Sheets admite SEQUENCE
y MOD
con la misma sintaxis, de modo que la fórmula básica es 100 % compatible.
Conclusión
Dominar las series cíclicas en Excel te libera de tareas repetitivas y mejora la consistencia de tus datos. Las funciones dinámicas ofrecen la solución más elegante, pero incluso en versiones antiguas dispones de métodos sólidos con fórmulas y VBA. Adopta la técnica que mejor se adapte a tu entorno y dedica tu tiempo a analizar información, no a teclear números.