.
La instrucción Do… Loop Until permite realizar un bucle mientras la condición sea falsa, tiene dos formas de uso, se puede verificar la condición antes de ingresar a realizar el bucle, tendrá la siguiente estructura:
Do While cells (x,1) = empty
instrucciones
x=x+1
Loop
La otra estructura es la siguiente, observese, que el bucle se ejecuta por lo menos una vez antes de analizar las condiciones para seguir el bucle.
instrucciones
x=x+1
Loop Until cells (x,1) = empty
Suscribe al blog para recibir en tu correo todas las actualizaciones, dispones también de un canal de You Tube donde encontrarás explicaciones de macros con mayor detalle.
Código que se inserta en un módulo
Sub busca()
Application.ScreenUpdating = False
Dim fila, fila1, numfila As Integer
fila = 2
fila1 = 2Sheets(«hoja1»).Activate
Do
If Sheets(«hoja1»).Cells(fila, 6) = «Incorrecto» Then
Sheets(«hoja1»).Cells(fila, 6).Activate
numfila = ActiveCell.Row
Sheets(«hoja2»).Cells(fila1, 1) = Sheets(«hoja1»).Cells(fila, 1)
Sheets(«hoja2»).Cells(fila1, 2) = Sheets(«hoja1»).Cells(fila, 2)
Sheets(«hoja2»).Cells(fila1, 3) = Sheets(«hoja1»).Cells(fila, 3)
Sheets(«hoja2»).Cells(fila1, 4) = Sheets(«hoja1»).Cells(fila, 4)
Sheets(«hoja2»).Cells(fila1, 5) = Sheets(«hoja1»).Cells(fila, 5)
Sheets(«hoja2″).Cells(fila1, 6) = numfila & » Incorrecto»
fila1 = fila1 + 1
End If
fila = fila + 1
Loop Until Sheets(«hoja1»).Cells(fila, 6) <> Empty
Application.ScreenUpdating = True
End Sub
Application.ScreenUpdating = False
Dim fila, fila1, numfila As Integer
fila = 2
fila1 = 2
Sheets(«hoja1»).Activate
Do
If Sheets(«hoja1»).Cells(fila, 6) = «Incorrecto» Then
Sheets(«hoja1»).Cells(fila, 6).Activate
numfila = ActiveCell.Row
Sheets(«hoja2»).Cells(fila1, 1) = Sheets(«hoja1»).Cells(fila, 1)
Sheets(«hoja2»).Cells(fila1, 2) = Sheets(«hoja1»).Cells(fila, 2)
Sheets(«hoja2»).Cells(fila1, 3) = Sheets(«hoja1»).Cells(fila, 3)
Sheets(«hoja2»).Cells(fila1, 4) = Sheets(«hoja1»).Cells(fila, 4)
Sheets(«hoja2»).Cells(fila1, 5) = Sheets(«hoja1»).Cells(fila, 5)
Sheets(«hoja2″).Cells(fila1, 6) = numfila & » Incorrecto»
fila1 = fila1 + 1
End If
fila = fila + 1
Loop Until Sheets(«hoja1»).Cells(fila, 6) <> Empty
Application.ScreenUpdating = True
End Sub
.
If this post was helpful INVITE ME A COFFEE and so help keep up the page, CLICK to download free example.
Si te gustó por favor compártelo con tus amigos
If you liked please share it with your friends