Skip to main content

¿Cómo duplicar filas basadas en el valor de una celda en una columna?

Author: Xiaoyang Last Modified: 2025-07-21

Al trabajar con tablas de datos en Excel, a veces puede ser necesario duplicar filas completas según un valor en una columna específica. Por ejemplo, imagina que tienes una tabla donde la columna D indica un número, y tu objetivo es copiar o insertar cada fila tantas veces como indique el valor de la celda correspondiente en la columna D. Esto puede ser útil para expandir datos, preparar conjuntos de datos para pruebas, simular inventarios o generar líneas de pedidos repetidas. Lograr esto de manera eficiente sin repetición manual ayuda a mantener la integridad de los datos y acelera significativamente el flujo de trabajo, especialmente para tablas más grandes.

Screenshot showing data table with numbers in column D before duplicating rows based on values Arrow Screenshot showing data table after duplicating rows based on column D values in Excel

Duplicar filas múltiples veces basadas en valores de celdas con código VBA

Copiar e insertar filas basadas en un número específico de veces con una herramienta práctica: Kutools para Excel

Duplicar filas mediante la transformación de Power Query


Duplicar filas múltiples veces basadas en valores de celdas con código VBA

Si necesitas crear rápidamente duplicados de filas enteras según los valores en una columna específica (por ejemplo, en la columna D), VBA ofrece una solución directa y eficiente. Este enfoque es particularmente valioso al manejar grandes conjuntos de datos, ya que automatiza el proceso y ayuda a garantizar precisión. Sin embargo, trabajar con VBA requiere cierta familiaridad básica con la pestaña Desarrollador de Excel y un entendimiento de cómo ejecutar macros. La principal ventaja es la flexibilidad: el código se puede ajustar para adaptarse a diferentes rangos u objetivos de columnas. Por otro lado, si no te sientes cómodo con VBA o las políticas de seguridad bloquean macros en tu entorno, considera una de las soluciones alternativas a continuación.

1. Mantén presionadas las teclas ALT + F11 para abrir la ventana de Microsoft Visual Basic para Aplicaciones.

2. Haz clic en Insertar > Módulo, y pega el siguiente código en la Ventana de Módulo.

Código VBA: Duplicar filas múltiples veces basadas en el valor de una celda:

Sub CopyData()
'Updateby Extendoffice
    Dim xRow As Long
    Dim VInSertNum As Variant
    xRow = 1
    Application.ScreenUpdating = False
    Do While (Cells(xRow, "A") <> "")
        VInSertNum = Cells(xRow, "D")
        If ((VInSertNum > 1) And IsNumeric(VInSertNum)) Then
           Range(Cells(xRow, "A"), Cells(xRow, "D")).Copy
           Range(Cells(xRow + 1, "A"), Cells(xRow + VInSertNum - 1, "D")).Select
           Selection.Insert Shift:=xlDown
           xRow = xRow + VInSertNum - 1
        End If
        xRow = xRow + 1
    Loop
    Application.ScreenUpdating = False
End Sub

3. Luego presiona la tecla F5 para ejecutar este código. Las filas completas se duplicarán múltiples veces basadas en el valor de la celda en la columna D, cumpliendo con tus requisitos.

Nota: En el código anterior, la letra A representa la primera columna de tu rango de datos seleccionado, y D es la letra de la columna usada para el número de duplicaciones. Modifica estas letras según sea necesario para adaptarlas a tu propia hoja de cálculo. Antes de ejecutar macros, recuerda hacer una copia de seguridad de tu libro, ya que las operaciones de macro no se pueden deshacer. Si aparece un mensaje de error, verifica si tu rango de datos seleccionado y las columnas objetivo son consistentes.

Copiar e insertar filas basadas en un número específico de veces con una herramienta práctica: Kutools para Excel

Si prefieres un método sin usar código, o deseas una interfaz fácil de usar para gestionar la duplicación por lotes, Kutools para Excel ofrece una solución práctica. Su función Copiar o Insertar Filas/Columnas Según Datos Especificados permite copiar e insertar filas rápidamente según el número especificado en las celdas relevantes. Esto es ideal para aquellos que manejan regularmente tales operaciones repetitivas de filas y necesitan un proceso más visual y personalizable. Kutools mantiene el diseño y formato de la tabla original durante la duplicación, reduciendo el riesgo de errores accidentales. Este método funciona sin problemas independientemente de tu experiencia con VBA y mejora significativamente la eficiencia para rangos de datos medianos a grandes.

Kutools para Excel ofrece más de 300 funciones avanzadas para simplificar tareas complejas, potenciando la creatividad y la eficiencia. Integrado con capacidades de inteligencia artificial, Kutools automatiza las tareas con precisión, haciendo que la gestión de datos sea sencilla. Información detallada de Kutools para Excel...  Prueba gratuita...
  1. Haz clic en Kutools > Insertar > Copiar o Insertar Filas/Columnas Según Datos Especificados para habilitar esta función;
  2. Luego, selecciona la opción Copiar e insertar filas, y especifica las celdas del Rango de Inserción y Veces de Repetición por separado en el cuadro de diálogo. Confirma tus elecciones y haz clic en Aceptar.

Screenshot of Kutools for Excel Duplicate Rows/Columns feature dialog box


Duplicar filas mediante la transformación de Power Query

Power Query proporciona una solución robusta y repetible para duplicar filas basadas en un valor de columna, ideal para tablas más grandes o cuando necesitas actualizar datos con frecuencia. Al usar esta herramienta, puedes expandir filas según indicadores numéricos sin fórmulas o código. Este método funciona bien para usuarios que desean un proceso paso a paso visualmente explicativo y necesitan repetibilidad con actualizaciones futuras de datos.

1. Agrega tus datos a una Tabla de Excel (selecciona el rango y presiona Ctrl+T). Ve a Datos > Desde Tabla/Rango para cargar tu tabla en Power Query.

2. En el Editor de Power Query, selecciona la pestaña Agregar Columna y haz clic en Columna Personalizada.

3. Escribe la siguiente fórmula para generar una lista para cada fila según el valor en la columna D. ( Nota: Debes reemplazar [D] por el encabezado real de tu columna. Por ejemplo, aquí seleccionaré las Veces de Repetición y haré clic en el botón Insertar para reemplazar el argumento [D].)

List.Repeat({1}, [D])

set options in the Power Query Editor

4. Haz clic en el botón Expandir junto a la nueva columna personalizada y haz clic en Expandir a Nuevas Filas.

Click the Expand button

5. Luego, puedes ver que los datos se han duplicado basados en los valores en la columna D, mira la captura de pantalla:

the data has been duplicated based on the values

6. Elimina las columnas auxiliares si es necesario, y haz clic en Cerrar y Cargar para devolver los datos a Excel.

Consejos: Cada vez que cambien tus datos fuente, simplemente actualiza la salida de Power Query para actualizar automáticamente las filas repetidas. Esto asegura eficiencia y precisión para procesos de datos continuos o automatizados. Power Query está integrado en Excel 2016 y versiones posteriores, y está disponible como un complemento gratuito en versiones anteriores. Si tu versión de Excel no tiene Power Query o no puedes crear consultas, considera usar una de las soluciones de fórmulas o VBA mencionadas anteriormente.

Las mejores herramientas de productividad para Office

🤖 Kutools AI Aide: Revoluciona el análisis de datos basado en: Ejecución inteligente | Generar código | Crear fórmulas personalizadas | Analizar datos y generar gráficos | Invocar Funciones mejoradas
Funciones populares: Buscar, resaltar o marcar duplicados | Eliminar filas en blanco | Combinar columnas o celdas sin perder datos | Redondear...
Super BUSCARV: Búsqueda por varios criterios | Búsqueda de varios valores | Búsqueda en varias hojas | Coincidencia difusa....
Lista desplegable avanzada: Crea rápidamente una lista desplegable | Lista desplegable dependiente | Lista desplegable de selección múltiple....
Administrador de columnas: Agregar un número específico de columnas | Mover columnas | Alternar el estado de visibilidad de columnas ocultas | Comparar rangos y columnas...
Funciones destacadas: Cuadrícula de enfoque | Vista de diseño | Barra de fórmulas mejorada | Administrador de Libro de trabajo y Hoja de cálculo | Biblioteca de AutoTexto | Selector de fechas | Combinar Datos | Cifrar/Descifrar celdas | Enviar correo electrónico por lista | Super Filtro | Filtro especial (filtrar celdas con fuente en negrita/cursiva/tachado...)...
Top15 conjuntos de herramientas:12 herramientas de texto (Agregar texto, Eliminar caracteres específicos, ...) | Más de50 tipos de gráficos (Diagrama de Gantt, ...) | Más de40 fórmulas prácticas (Calcular edad basada en la fecha de nacimiento, ...) |19 herramientas de inserción (Insertar código QR, Insertar imagen desde ruta, ...) |12 herramientas de conversión (Convertir a palabras, Conversión de moneda, ...) |7 herramientas para combinar y dividir (Combinar filas avanzado, Dividir celdas, ...) | ... y más

Potencia tus habilidades en Excel con Kutools para Excel y experimenta una eficiencia sin precedentes. Kutools para Excel ofrece más de300 funciones avanzadas para aumentar la productividad y ahorrar tiempo. Haz clic aquí para obtener la función que más necesitas...


Office Tab lleva la interfaz de pestañas a Office y facilita mucho tu trabajo

  • Habilita la edición y lectura con pestañas en Word, Excel, PowerPoint, Publisher, Access, Visio y Project.
  • Abre y crea varios documentos en nuevas pestañas de la misma ventana, en lugar de nuevas ventanas.
  • ¡Aumenta tu productividad en un50% y reduce cientos de clics de ratón cada día!