Saltar al contenido

Delete Rows

publicado

Hola buen día, alguien me puede ayudar con una macro mucho mas eficiente que esta, he realizado esta q subo, pero no estoy satisfecho, habrá otra manera de mejorar el código o que sea mucho mas eficiente, la idea es eliminar las filas que tengan completos los "00:00" de la columna H a la R, menos los que contengan números.

muchas gracias de antemano al que me ayude, abrazosNomina.xlsm

 

Featured Replies

publicado

Prueba con la macro así:

Sub Delete()

    Dim starTime As Double
    Dim x As Integer
    Dim ultRow As Integer
    Dim ultCol As Integer
    
    Application.ScreenUpdating = False
    With dataPrenomina
      ultRow = .Cells(Rows.Count, 2).End(xlUp).Row
      ultCol = .Cells(1, Columns.Count).End(xlToLeft).Column
      starTime = Timer
      For x = ultRow To 2 Step -1
        If Application.Sum(.Range("H" & x).Resize(1, ultCol - 7)) = 0 Then
           .Rows(x).Delete
        End If
      Next x
      MsgBox "Timer is: " & Format(Timer - starTime, "##,##0.00")
   End With
    
End Sub

 

publicado
  • Autor

Antoni y Gerson magnificas respuestas he aprendido un resto, y mas a optimizar el código... Mil gracias, Dios los bendiga.

Archivado

Este tema está ahora archivado y está cerrado a más respuestas.