viernes, 1 de septiembre de 2017

excel repetir filas

En esta ocasión un usuario quería para un fichero excel que tenía, cada línea se triplicara. El fichero era lo suficientemente grande para que hacer la tarea de manera manual fuera un castigo. Así que busqué un poco por Internet y cambiando un ejemplo que encontré hice la siguiente macro para poder automatizar el proceso. Aquí un ejemplo más donde la programación puede hacernos la vida mucho más fácil.

Sub Macro1()
' JMIRAS 09/09/16 macro para triplicar las líneas seleccionadas
n = 3
Application.ScreenUpdating = False
'guardo el total de filas seleccionadas
filas = Selection.Rows.Count
'me posiciono en la 1ra del rango seleccionado
Selection.Range("A1").Select
'repito el bucle hasta el total de filas
For i = 1 To filas
 
    'copio, inserto, pego, me paso a la fila siguiente
    For j = 1 To n
        Selection.EntireRow.Copy
        Selection.Offset(1, 0).Select
        Selection.EntireRow.Insert Shift:=xlDown
        j = j + 1
    Next j
    Application.CutCopyMode = False
    ActiveCell.Offset(1, 0).Select
Next

End Sub