Bucle no aplica a fila posterior a la que cumple la condición pero si a las siguientes a esta

Hola a todos,

antes de nada deciros que tengo poca experiencia con vba. Con la ayuda de esta web he conseguido armar una macro que necesitaba, salvo por un pequeño detalle.

Os comento: la intención de esta macro es cortar de una hoja1 los registros que están "done" para pasarlos a una hoja2 ("TRACK RECORD") en la que se almacenan por orden de entrada.

Hasta aquí todo mas o menos bien. El problema viene al ejecutarla cuando dos registros que están "Done" están en filas consecutivas, por ej. El registros de la filas 3 y 4. En este caso la macro solo toma la primera de las dos, es decir la 3. Para pasar la 4 a la otra hoja tendría que volver a pulsarlo.

Podríais por favor echarle un vistazo a ver si a primera vista veis el fallo? Gracias,

BeginRow = 3
EndRow = 170
chkcol = 6
Dim fila1 As Integer
For RowCnt = BeginRow To EndRow
If Cells(RowCnt, chkcol).Value = "Done" Then
Cells(RowCnt, chkcol).EntireRow.Select
fila1 = Sheets("TRACK RECORD").Range("A65536").End(xlUp).Row + 1
Selection.Copy Destination:=Sheets("TRACK RECORD").Range("A" & fila1)
Selection.EntireRow.Delete
End If
Next RowCnt
'
End Sub

Añade tu respuesta

Haz clic para o