Sin utilizar código VBA puedes oprimir las teclas Ctrl 2 al mismo tiempo, esto te repetirá el último registro. Si sabes VBA y SQL puedes hacer algo creando en el evento Después de Actualizar algo como:
SELECT Max(idmantenimiento), campo2, campo3 AS ultimo
FROM tblmantenimiento;
El código anterior nos devuelve los valores del último registro. Puedes hacerlo con DAO o ADO creando un RecordSet. Guarda los valores devueltos por campo1 y campo2 en variables, algo como:
Dim v_campo1 AS doulbe
DIM v_campo2 AS double
DIM rs as Recordset
dim db as Database
dim sql as String
Set db=currentdb()
sql="SELECT Max(idmantenimiento), campo2, campo3 FROM tblmantenimiento;"
Set rs=db.openrecordset(sql)
v_campo1=rs!campo1
v_campo2=rs!campo2
Docmd.RunSQL "INSERT INTO tblmantenimiento ('campo1','campo2') VALUES v_campo1,v_campo2"
Me.Refresh
NOTA: En el ejemplo asumo que tienes un campo autonumérico idmantenimiento. Sino lo tienes tenemos que mover el curso al último registro algo como:
Dim v_campo1 AS doulbe
DIM v_campo2 AS double
DIM rs as Recordset
dim db as Database
dim sql as String
Set db=currentdb()
sql="SELECT campo2, campo3 FROM tblmantenimiento;"
Set rs=db.openrecordset(sql)
rs.movelast
v_campo1=rs!campo1
v_campo2=rs!campo2
Docmd. RunSQL "INSERT INTO tblmantenimiento ('campo1','campo2') VALUES v_campo1, v_campo2"
Me. Refresh