Eliminar última fila vba macro

publicado por: Anonymous

Tengo un problema con mi código de macro:
Es super simple, es un registro de datos que se llenan en una hoja de Excel donde todos los campos son obligatorios (van desde la columna A hasta la I) y cuando se registre sin todos los campos, se debe borrar la fila que se está intentando agregar a la hoja.
Al ejecutar lo que quiero, me borra la fila superior y lo hace reiterativamente, si alguien puede ayudarme agradecería mucho!

Sub EliminarUltimaFila()
Dim UltimaFila As Long
With ActiveSheet
    UltimaFila = .Cells(Rows.Count, "I").End(xlUp).Row
    .Range("A" & UltimaFila & ":I" & UltimaFila).Delete Shift:=xlUp
    Selection.ClearContents
End With

End Sub

solución

suponiendo que tus datos empiezan en la celda A1 (es decir, fila 1, columna 1), prueba con:

Sub EliminarUltimaFila()
Dim UltimaFila As Long
With ActiveSheet
    UltimaFila = .Cells(1, 1).End(xlDown).Row
    .Range("A" & UltimaFila & ":I" & UltimaFila).Delete Shift:=xlUp
End With
End Sub

Esto borrará siempre la última fila de datos, que es lo que pides en tu pregunta. Tu código estaba casi bien, te fallaba solamente el determinar el valor de UltimaFila. Prueba y me cuentas 🙂

Respondido por: Anonymous

Leave a Reply

Your email address will not be published. Required fields are marked *