Osea, la macro ba bajando de fila en fila, hasta k se de cuenta que no hay mas nada que cortar, osea al hacer Selection.Cut , en una cell y ver k no tiene datos el while termine.
Gracias, muy amables

Baskjzz
| |||
![]() Que tal, quisiera preguntarles si alguien supiera poner un while en una macro, que cuando no encuentre mas datos en una celda termine. Osea, la macro ba bajando de fila en fila, hasta k se de cuenta que no hay mas nada que cortar, osea al hacer Selection.Cut , en una cell y ver k no tiene datos el while termine. Gracias, muy amables ![]() Baskjzz |
| |||
![]() Pues yo lo he hecho con un FOR, pero el principio es el mismo. For renglon = 3 To 65000 If Len(Trim(mSheet.Cells(renglon, 1).Value)) = 0 Then Exit For End If .......... codigo ... .......... Me.Repaint Next renglon salu2.... |
| |||
![]() Que tal, este codigo te ayudara. :::::::::::::::::::::::::::::::::::::::::::::::::: ::::::::: Rem Primero debes definir una celda de inicio Hoja1.Activate Hoja1.Range("A2").Select Rem luego creas el bucle while Do While ActiveCell <> Empty ActiveCell.Offset(1, 0).Select Loop :::::::::::::::::::::::::::::::::::::::::::::::::: :::::::::: el valor Empty define si hay o no hay dato en la celda y mientras la celda lo tenga se desplazara 1 fila y 0 columnas; si quieres devolverte una fila, despues del Loop puedes agregar la siguiente linea ActiveCell.Offset(-1, 0).Select Es decir que la cantidad de filas para desplazarse esta definida por el primer subindice y las columnas por el segundo. Espero que te sea util, chao. ![]() |