Note: The other languages of the website are Google-translated. Back to English

¿Cómo copiar e insertar una fila varias veces o duplicar la fila x veces en Excel?

En su trabajo diario, ¿alguna vez ha intentado copiar una fila o cada fila y luego insertar varias veces debajo de la fila de datos actual en una hoja de trabajo? Por ejemplo, tengo un rango de celdas, ahora quiero copiar cada fila y pegarlas 3 veces en la siguiente fila como se muestra en la siguiente captura de pantalla. ¿Cómo podrías lidiar con este trabajo en Excel?


Copie e inserte una fila específica varias veces con el código VBA

Si desea duplicar solo una fila específica x veces, el siguiente código VBA puede ayudarlo, haga lo siguiente:

1. Especifique una fila que desee copiar e insertar varias veces, y luego mantenga presionada la ALT + F11 llaves, luego abre el Microsoft Visual Basic para aplicaciones ventana.

2. Hacer clic recuadro > Móduloy pegue el siguiente código en el Módulo Ventana.

Código de VBA: duplique una fila específica varias veces:

Sub test()
'Updateby Extendoffice
    Dim xCount As Integer
LableNumber:
    xCount = Application.InputBox("Number of Rows", "Kutools for Excel", , , , , , 1)
    If xCount < 1 Then
        MsgBox "the entered number of rows is error, please enter again", vbInformation, "Kutools for Excel"
        GoTo LableNumber
    End If
    ActiveCell.EntireRow.Copy
    Range(ActiveCell.Offset(1, 0), ActiveCell.Offset(xCount, 0)).EntireRow.Insert Shift:=xlDown
    Application.CutCopyMode = False
End Sub

3. Después de pegar el código, presione F5 para ejecutar este código, y aparece un cuadro emergente para recordarle que ingrese la cantidad de veces que desea duplicar, vea la captura de pantalla:

4. Luego haga clic OK y se han insertado tres nuevas filas copiadas debajo de la fila seleccionada, ver captura de pantalla:


Copie e inserte cada fila varias veces en función de un número específico fácilmente

Normalmente, no existe un buen método para copiar e insertar filas varias veces, excepto para copiar e insertar manualmente. Pero con Kutools for Excel's Filas / columnas duplicadas según el valor de la celda característica, puede resolver este problema con facilidad. ¡Haga clic para descargar Kutools para Excel!

Kutools for Excel: con más de 300 prácticos complementos de Excel, prueba gratuita y sin límite en 60 días. ¡Descarga y prueba gratis ahora!


Copie e inserte cada fila varias veces con el código VBA

Para duplicar cada fila varias veces en un rango, puede aplicar el siguiente código VBA, haga lo siguiente:

1. Mantenga pulsado el ALT + F11 llaves, luego abre el Microsoft Visual Basic para aplicaciones ventana.

2. Hacer clic recuadro > Móduloy pegue el siguiente código en el Módulo Ventana.

Código de VBA: duplique cada fila varias veces:

Sub insertrows()
'Updateby Extendoffice
Dim I As Long
Dim xCount As Integer
LableNumber:
xCount = Application.InputBox("Number of Rows", "Kutools for Excel", , , , , , 1)
If xCount < 1 Then
MsgBox "the entered number of rows is error ,please enter again", vbInformation, "Kutools for Excel"
GoTo LableNumber
End If
For I = Range("A" & Rows.CountLarge).End(xlUp).Row To 2 Step -1
Rows(I).Copy
Rows(I).Resize(xCount).Insert
Next
Application.CutCopyMode = False
End Sub

3. Y luego presione F5 para ejecutar este código, y aparece un cuadro emergente para recordarle que ingrese la cantidad de veces que desea duplicar para cada registro, vea la captura de pantalla:

4. Luego haga clic OK, y cada fila se ha copiado e insertado 3 veces debajo de las activas, vea la captura de pantalla:

Nota:: En el código anterior, el A indica que el rango de datos se inicia en la columna A, si sus datos comienzan en la columna K, por favor cambia A a K como su necesidad.


Copie e inserte cada fila varias veces según un número específico con una característica increíble

Tal vez no esté familiarizado con el código VBA o le preocupe que el código bloquee sus datos. Aquí, presentaré una función útil, Kutools for Excel's Filas / columnas duplicadas según el valor de la celda, con esta utilidad, puede copiar e insertar rápidamente las filas según el número que especificó.

Consejos:Para aplicar esto Filas / columnas duplicadas según el valor de la celda función, en primer lugar, debe descargar la Kutools for Excely, a continuación, aplique la función de forma rápida y sencilla.

Después de instalar Kutools for Excel, haz lo siguiente:

1. Ingrese los números de repetición que desea duplicar filas en una lista de celdas al lado de sus datos, vea la captura de pantalla:

2. Hacer clic Kutools > recuadro > Filas / columnas duplicadas según el valor de la celda, ver captura de pantalla:

3. En la Copiar e insertar filas y columnas cuadro de diálogo, seleccione Copiar e insertar filas opción en el Tipo sección, luego seleccione el rango de datos que desea duplicar y luego especifique el tiempo de repetición para duplicar las filas, vea la captura de pantalla:

4. Luego, haz clic Ok or Aplicar botón, obtendrá el siguiente resultado cuando lo necesite:

¡Haga clic para descargar Kutools para Excel y prueba gratuita ahora!


Las mejores herramientas de productividad de oficina

Kutools para Excel resuelve la mayoría de sus problemas y aumenta su productividad en un 80%

  • Reutilizar: Inserte rápidamente fórmulas complejas, gráficos y cualquier cosa que hayas usado antes; Cifrar celdas con contraseña; Crear lista de distribución y enviar correos electrónicos ...
  • Barra de súper fórmula (edite fácilmente varias líneas de texto y fórmulas); Diseño de lectura (leer y editar fácilmente un gran número de celdas); Pegar en rango filtrado...
  • Combinar celdas / filas / columnas sin perder datos; Contenido de celdas divididas; Combinar filas / columnas duplicadas... Prevenir celdas duplicadas; Comparar rangos...
  • Seleccione Duplicado o Único Filas; Seleccionar filas en blanco (todas las celdas están vacías); Super Find y Fuzzy Find en muchos libros de trabajo; Selección aleatoria ...
  • Copia exacta Varias celdas sin cambiar la referencia de la fórmula; Crear referencias automáticamente a varias hojas; Insertar viñetas, Casillas de verificación y más ...
  • Extraer texto, Agregar texto, Eliminar por posición, Quitar espacio; Crear e imprimir subtotales de paginación; Convertir entre contenido de celdas y comentarios...
  • Súper filtro (guardar y aplicar esquemas de filtros a otras hojas); Orden avanzado por mes / semana / día, frecuencia y más; Filtro especial en negrita, cursiva ...
  • Combinar libros y hojas de trabajo; Combinar tablas basadas en columnas clave; Dividir datos en varias hojas; Conversión por lotes de xls, xlsx y PDF...
  • Más de 300 potentes funciones. Compatible con Office/Excel 2007-2021 y 365. Compatible con todos los idiomas. Fácil implementación en su empresa u organización. Funciones completas Prueba gratuita de 30 días. Garantía de devolución de dinero de 60 días.
pestaña kte 201905

Office Tab lleva la interfaz con pestañas a Office y hace que su trabajo sea mucho más fácil

  • Habilite la edición y lectura con pestañas en Word, Excel, PowerPoint, Publisher, Access, Visio y Project.
  • Abra y cree varios documentos en nuevas pestañas de la misma ventana, en lugar de en nuevas ventanas.
  • ¡Aumenta su productividad en un 50% y reduce cientos de clics del mouse todos los días!
officetab parte inferior
Comentarios (32)
Aún no hay calificaciones. ¡Sé el primero en calificar!
Este comentario fue minimizado por el moderador en el sitio
¡Gracias!
Este comentario fue minimizado por el moderador en el sitio
Awesome Macro - ¡Me ahorró mucho tiempo!
Este comentario fue minimizado por el moderador en el sitio
muy buena macro amigo!
Este comentario fue minimizado por el moderador en el sitio
quiero generar filas duplicadas al azar,

por ej. generar filas duplicadas aleatorias entre 20 y 80.


¿Qué será el código actualizado para lo siguiente?


Sub insertar filas ()
'Actualizar por Extendoffice 2016616
Dim I tan largo
Dim xCount como entero
Número de etiqueta:
xCount = Application.InputBox("Número de filas", "Kutools para Excel", , , , , , 1)
Si xCuenta < 1 Entonces
MsgBox "el número ingresado de filas es un error, ingrese nuevamente", vbInformation, "Kutools for Excel"
Ir a número de etiqueta
Si terminar
For I = Range("A" & Rows.CountLarge).End(xlUp).Row To 1 Step -1
Filas(I).Copiar
Filas (I). Cambiar tamaño (xCount). Insertar
Siguiente
Application.CutCopyMode = False
End Sub
Este comentario fue minimizado por el moderador en el sitio
Quiero duplicar filas en función de un parámetro. Por ejemplo, tengo una columna llamada tiempo de duración de la reunión. Si esa columna es más de 1, quiero duplicar las filas de ID de reunión en función de ese número. Si la duración de la reunión es de 2 horas, duplique el ID de la reunión dos veces. Si la reunión dura 3 horas, duplíquela tres veces.
los incrementos de media hora se pueden redondear a la hora.

MeetingID Hora de inicio Hora de finalización Duración de la reunión
43117 9:00 11:00 02:00
43580 9:30 11:00 01:30
42699 10:00 11:30 01:30
12345 01:00 2:00 01:00
Este comentario fue minimizado por el moderador en el sitio
Tengo el mismo problema. ¿Has encontrado una solución?
Este comentario fue minimizado por el moderador en el sitio
Hola, chicos,
Puede ser que el siguiente código de VBA pueda hacerle un favor, aplíquelo:
Sub insertar filas ()
Dim I tan largo
Dim xRg como rango
Dim xHour, xMin mientras dure
On Error Resume Next
Application.ScreenUpdating = False
Para I = Rango("D" & Filas.CuentaLarge).End(xlUp).Row To 1 Step -1
xHora = 0
Establecer xRg = Rango ("D" & I)
xHora = Hora(xRg.Valor) + 1
xMin = Minuto(xRg.Valor)
Si xMin < 30 Entonces xHour = xHour - 1
Filas(I).Copiar
Filas (I). Cambiar tamaño (xHour). Insertar
Siguiente
Application.ScreenUpdating = True
Application.CutCopyMode = False
End Sub

Por favor pruebalo. ¡Espero que te ayude!
Este comentario fue minimizado por el moderador en el sitio
Utilicé estas macros en el pasado y siempre ha funcionado hasta hace poco. ¿Alguna idea de por qué solo duplicaría la fila superior incluso cuando se usan las macros de varias filas? He quitado todos los filtros/paneles congelados.
Este comentario fue minimizado por el moderador en el sitio
Hola, ¿cómo puedo cambiar el código para incluir lo siguiente?

1. duplicado basado en el número de días
2. cambiar la columna EOM de fin de mes a fecha diaria
Este comentario fue minimizado por el moderador en el sitio
Realmente gracias por su apoyo !!!!
Este comentario fue minimizado por el moderador en el sitio
Me encanta el código! ¿Cómo configuro el rango de inicio para omitir la primera fila (Encabezados de columna) y comenzar en la fila 2?
Este comentario fue minimizado por el moderador en el sitio
Hola, Devin,
Para omitir la primera fila del encabezado, aplique el siguiente código VBA:

Sub insertar filas ()
Dim I tan largo
Dim xCount como entero
Número de etiqueta:
xCount = Application.InputBox("Número de filas", "Kutools para Excel", , , , , , 1)
Si xCuenta < 1 Entonces
MsgBox "el número ingresado de filas es un error, ingrese nuevamente", vbInformation, "Kutools for Excel"
Ir a número de etiqueta
Si terminar
For I = Range("A" & Rows.CountLarge).End(xlUp).Row To 2 Step -1
Filas(I).Copiar
Filas (I). Cambiar tamaño (xCount). Insertar
Siguiente
Application.CutCopyMode = False
End Sub

¡Pruébalo, espero que te pueda ayudar!
Este comentario fue minimizado por el moderador en el sitio
Hola, necesito ayuda, así es como se ve mi tabla, por ejemplo, cuando agrego 2 filas al final de mi primera tabla, quiero que el vba me ayude a hacer lo mismo para la tabla a continuación (agregue 1 filas al final final de la mesa). Entonces mi trabajo será, solo necesito agregar filas en la primera tabla, la tabla a continuación generará filas automáticamente en función de los números de fila en la primera tabla. son la codificación que usé ahora para agregar una fila para la primera tabla. Espero que alguien pueda resolver este problema por mí, thx.Sub InsertNumRows()

ActiveCell.EntireRow.Copy

Dim Rng siempre que

Application.DisplayAlerts = False
On Error Resume Next
Rng = InputBox("Ingrese el número de filas requeridas.")
En caso de error, vaya a 0
Application.DisplayAlerts = True

Si Rng = 0 Entonces
MsgBox "¡No especificó un rango!"
Exit Sub

otro
Rango (ActiveCell.Offset (1, 0), ActiveCell.Offset (Rng, 0)). Seleccione
Selection.EntireRow.Insert Shift: = xlDown
Si terminar

End Sub
Este comentario fue minimizado por el moderador en el sitio
¡Me encanta! ¡Funciona siempre! Muchas gracias por esto :)
Este comentario fue minimizado por el moderador en el sitio
¿Cómo hago esto para las columnas?
Este comentario fue minimizado por el moderador en el sitio
¿Cómo puedo hacer esto para las columnas?
Este comentario fue minimizado por el moderador en el sitio
cómo realizar la misma acción con celdas seleccionadas usando VB,


Necesito repetir algunas celdas seleccionadas (filas y columnas) x número de veces en la misma hoja y en el mismo orden que:

line1
line2
line3

line1
line2
line3
Este comentario fue minimizado por el moderador en el sitio
hola, esto funcionó muy bien, solo necesito dos filas copiadas N veces. ¿Puede ajustar el código para que cuando seleccione dos filas, luego copie esas dos filas hacia abajo N veces? Gracias por tu ayuda
Este comentario fue minimizado por el moderador en el sitio
Hola Sal,
Si solo necesita copiar dos filas hacia abajo varias veces, solo necesita usar el código VBA 1 en este artículo, aplicar el código dos veces resolverá su problema. Por favor, inténtalo, ¡espero que te pueda ayudar!
Este comentario fue minimizado por el moderador en el sitio
Copie e inserte cada fila varias veces con código VBA

En el código VBA, ¿cómo puedo seleccionar la fila inicial?
Este comentario fue minimizado por el moderador en el sitio
No funciona con Windows 2019, deseo usar la función en mención pero simplemente no hace absolutamente nada
Este comentario fue minimizado por el moderador en el sitio
hola a todos.. ¡Gracias de antemano por su ayuda!

El código VBA para duplicar una fila específica varias veces funciona perfectamente hasta que usa un filtro. Me pregunto si alguien me puede ayudar a resolver este problema. Necesito un código que funcione incluso si tiene algunos valores filtrados. Estoy usando una gran cantidad de datos ordenados por ubicaciones. El código funciona parcialmente, pega el número de fila deseado pero no hay datos ni formato cuando apliqué un filtro.
Este comentario fue minimizado por el moderador en el sitio
Hola, ¿es posible usar diferentes tamaños (valores) para cada fila? Estoy intentando usar el vector, pero no funciona.
Por ejemplo :
Filas (I). Cambiar tamaño (xCount (y)). Insertar

Donde los valores guardados en xCount(y) se leen de una tabla.
Este comentario fue minimizado por el moderador en el sitio
Hola Guss,
Puede ser que el siguiente artículo pueda ayudarlo, por favor verifíquelo:
https://www.extendoffice.com/documents/excel/4054-excel-duplicate-rows-based-on-cell-value.html
Este comentario fue minimizado por el moderador en el sitio
Para el segundo código de VBA (código de VBA: duplique cada fila varias veces) sigo recibiendo un error de tiempo de ejecución: 1004
No hay comentarios publicados aquí todavía
Ver más
Deje sus comentarios
Publicar como invitado
×
Califica esta publicación:
0   Personajes
Ubicaciones sugeridas

Siganos

Copyright © 2009 - www.extendoffice.com. | Reservados todos los derechos. Energizado por ExtendOffice, | Mapa del Sitio
Microsoft y el logotipo de Office son marcas comerciales o marcas comerciales registradas de Microsoft Corporation en los Estados Unidos y / o en otros países.
Protegido por Sectigo SSL