Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

insertar fila en blanco

91 views
Skip to first unread message

ACH

unread,
Dec 9, 2005, 6:42:30 AM12/9/05
to
Tengo una lista con mas de 2000 filas y quiero insertar una fila en blanco
despues de cada una de las que ya yengo escritas. ¿Como lo hago mediante una
macro y de una sola vez?.

Gabriel Raigosa

unread,
Dec 9, 2005, 9:08:25 AM12/9/05
to
Saludos:

suponiendo que tengo datos desde celda A1 hasta la fila "x", no importa
cual.

la macro va a la celda A1 e inserta una fila debajo de esta, luego busca la
siguiente fila con algún dato e inserta otra fila en blanco y así
sucesivamente.

Sub insertar()
ActiveSheet.Range("A1").Activate
Do While Not IsEmpty(ActiveCell)
ActiveCell.Offset(1, 0).Activate
Selection.EntireRow.Insert
ActiveCell.Offset(1, 0).Activate
Loop
ActiveSheet.Range("A1").Activate
End Sub

--
Gabriel Raigosa

Gabriel...@hot.mail.com
"ACH" <augus...@terra.es> escribió en el mensaje
news:OWlTjWL$FHA....@tk2msftngp13.phx.gbl...

KL

unread,
Dec 9, 2005, 9:33:11 AM12/9/05
to
Hola chicos,

Este macro creo que sera un poco mas rapido y menos parpadeante:

Sub test()
Dim Ufila As Long, i As Long
Application.ScreenUpdating = False
With ActiveSheet
Ufila = .Cells(.Rows.Count, "A").End(xlUp).Row
For i = Ufila To 2 Step -1
If .Cells(i, "A") <> "" Then _
.Rows(i).EntireRow.Insert Shift:=xlDown
Next i
End With
End Sub


Saliudos,
KL


"Gabriel Raigosa" <Gabriel...@hot.mail.com> wrote in message news:%23UM$8nM$FHA....@TK2MSFTNGP11.phx.gbl...


> Saludos:
>
> suponiendo que tengo datos desde celda A1 hasta la fila "x", no importa cual.
>

> la macro va a la celda A1 e inserta una fila debajo de esta, luego busca la siguiente fila con algЗn dato e inserta otra fila en
> blanco y asМ sucesivamente.


>
> Sub insertar()
> ActiveSheet.Range("A1").Activate
> Do While Not IsEmpty(ActiveCell)
> ActiveCell.Offset(1, 0).Activate
> Selection.EntireRow.Insert
> ActiveCell.Offset(1, 0).Activate
> Loop
> ActiveSheet.Range("A1").Activate
> End Sub
>
> --
> Gabriel Raigosa
>
> Gabriel...@hot.mail.com

> "ACH" <augus...@terra.es> escribiС en el mensaje news:OWlTjWL$FHA....@tk2msftngp13.phx.gbl...

RAUL

unread,
Dec 10, 2005, 1:21:02 PM12/10/05
to
Es rápida, pero no "frena" en una fila vacía. Es posible hacer que inserte
filas hasta llegar a una vacía y ahí se detenga?.
Saludos.

"KL" escribió:

KL

unread,
Dec 10, 2005, 3:30:30 PM12/10/05
to
Hola Raul,

> Es rápida, pero no "frena" en una fila vacía. Es posible hacer que inserte
> filas hasta llegar a una vacía y ahí se detenga?.

Me parece que segun la descripcion inicial lo de franar al tropezar con una fila vacia no era precisamente la idea: "...insertar una
fila despues de cada una de las ... ya ... escritas". Si es lo que quieres, entonces se puede cambiar el codigo de la siguiente
manera:

Sub test()
Dim Ufila As Long, i As Long
Application.ScreenUpdating = False
With ActiveSheet

Ufila = .Cells(2, "A").End(xlDown).Row


For i = Ufila To 2 Step -1
If .Cells(i, "A") <> "" Then _
.Rows(i).EntireRow.Insert Shift:=xlDown
Next i
End With
End Sub

Saludos,
KL

0 new messages