PARA MATILDE... Problemas con la macro eliminar filas

hola matlde es posible que me ayudes ya q necesito una macros q me elimine la fila ,donde se encuentra el cursor o celda activa..asi mismo conjuntamente poder deshacer ..

ejemplo

si eliminara la fila..y luego me retractara para q sus datos y o fila vuelvan a su original

como el CONTROL+Z ,ESPERO que me puedas ayudar..gracias.

edinson

Respuesta
1

REcién regreso de mis vacaciones ... en la semana te respondo, no finalices aún la consulta hasta que te la responda.

Lo que intentas hacer no es posible... al eliminar una fila, digamos la 5, otros registros ocupan su lugar y los datos borrados no se guardan.

Lo que generalmente hacemos es consultar previamente con un msgbox.

Podrías agregar a esto, que si se acepta la operación, en lugar de eliminar la fila se corte y pegue en otra hoja auxiliar.

Espero te sirva la idea... si necesitas las instrucciones avisame.

si por favor seria un gran idea -- _-- espero tu pronta respuesta

Bien, cada macro funciona con la celda activa.

La 1ra, te pregunta si querés eliminar la fila, x SI la pasa a otra hoja que llamé Enero (ajustalo) y la deja en la primer fila libre. Mi hoja original se llama Hoja2 (ajustá también).

Sub eliminaFila()
'x Elsamatilde
'trabaja sobre la celda activa
sino = msgbox("¿Estás seguro de eliminar esta fila?",vbyesno,"ATENCION")
if sino <> vbyes then exit sub
ActiveCell.EntireRow.Select
Selection.Cut
Sheets("Enero").Select
Range("A65536").End(xlUp).Offset(1, 0).Select
ActiveSheet.Paste
Sheets("Hoja2").Select
Selection.Delete Shift:=xlUp
Range("A1").Select 'opcional
End Sub

Para recuperar ejecutando la 2da macro, primero seleccioná en Hoja2 dónde la querés insertar, sino la insertará en la fila de la celda seleccionada. Luego vas a la hoja Enero, seleccioná la col A de la fila que quieras recuperar y ejecutá esta macro.

Sub RecuperoFila()
'x Elsamatilde
'seleccionar la celda en col A donde deba colocarse la fila repuesta
'seleccionar 1 celda de la fila a reponer en hoja auxiliar
ActiveCell.EntireRow.Select
Selection.Cut
Sheets("Hoja2").Select
Selection.Insert Shift:=xlDown
Range("A1").Select 'opcional
End Sub

Ajustá todos los detalles que comento y probala. No olvides finalizar luego la consulta.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas