Eliminar el ultimo registro agregado a una tabla especifica

Necesito hacer que el ultimo registro agregado a una tabla se pueda eliminar (en caso de estar mal o algo parecido), pero esto es desde un formulario que no tienen ningún vinculo con la tabla, mi pregunta es ¿qué función utilizo para referirme a esta tabla?

Ya que encontré que con el siguiente comando se borran los últimos registros:

DoCmd. GoToRecord,, acLast
DoCmd. RunCommand acCmdDeleteRecord

Pero no se como haga referencia a una tabla especifica desde mi formulario con un botón creado

1 respuesta

Respuesta
1

Esos dos comandos sólo te servirán si tienes el formulario basado en una tabla o consulta.

Para hacer lo que pides has de usar o bien una SQL de eliminación o un recordset.

Suponiendo que tu tabla (la llamaré TDatos) tenga un campo ID autonumérico (pues facilita la identificación del ultimo registro)

1º/ Con una SQL, el código asociado a tu botón sería:

Dim miSQL As String

Dim ultimo As Integer

Ultimo=DMax("ID","TDatos")

miSQL="DELETE * FROM TDatos WHERE ID=" & ultimo

CurrentDb.Execute miSQL

Es decir, primero buscas el valor del ID del último registro, que al ser autonumérico será el más alto, luego construyes la SQl y la ejecutas.

2º/ Por medio de un recordset:

Dim rst As DAO.Recordset

Set rst=CurrentDb.OpenRecordset("TDatos")

rst.MoveLast

rst.Delete

rst.Close

Set rst=Nothing

Es decir, creas un recordset sobre la tabla, te mueves al último registro, lo borras y cierras el recordset.

¡Gracias! De nuevo muchas gracias experto! siempre dando excelentes respuestas que son de gran ayuda para los novatos como yo en access, mil gracias y saludos!

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas