Share via


Recordset.LastModified Property (DAO)

Returns a bookmark indicating the most recently added or changed record.

Syntax

expression .LastModified

expression A variable that represents a Recordset object.

Remarks

You can use the LastModified property to move to the most recently added or updated record. Use the LastModified property with table- and dynaset-type Recordset objects. A record must be added or modified in the Recordset object itself in order for the LastModified property to have a value.

Example

This example uses the LastModified property to move the current record pointer to both a record that has been modified and a newly created record.

Sub LastModifiedX() 
 
 Dim dbsNorthwind As Database 
 Dim rstEmployees As Recordset 
 Dim strFirst As String 
 Dim strLast As String 
 
 Set dbsNorthwind = OpenDatabase("Northwind.mdb") 
 Set rstEmployees = _ 
 dbsNorthwind.OpenRecordset("Employees", _ 
 dbOpenDynaset) 
 
 With rstEmployees 
 ' Store current data. 
 strFirst = !FirstName 
 strLast = !LastName 
 ' Change data in current record. 
 .Edit 
 !FirstName = "Julie" 
 !LastName = "Warren" 
 .Update 
 ' Move current record pointer to the most recently 
 ' changed or added record. 
 .Bookmark = .LastModified 
 Debug.Print _ 
 "Data in LastModified record after Edit: " & _ 
 !FirstName & " " & !LastName 
 
 ' Restore original data because this is a demonstration. 
 .Edit 
 !FirstName = strFirst 
 !LastName = strLast 
 .Update 
 
 ' Add new record. 
 .AddNew 
 !FirstName = "Roger" 
 !LastName = "Harui" 
 .Update 
 ' Move current record pointer to the most recently 
 ' changed or added record. 
 .Bookmark = .LastModified 
 Debug.Print _ 
 "Data in LastModified record after AddNew: " & _ 
 !FirstName & " " & !LastName 
 
 ' Delete new record because this is a demonstration. 
 .Delete 
 .Close 
 End With 
 
 dbsNorthwind.Close 
 
End Sub 

This example uses the AddNew method to create a new record with the specified name. The AddName function is required for this procedure to run.

Sub AddNewX() 
 
 Dim dbsNorthwind As Database 
 Dim rstEmployees As Recordset 
 Dim strFirstName As String 
 Dim strLastName As String 
 
 Set dbsNorthwind = OpenDatabase("Northwind.mdb") 
 Set rstEmployees = _ 
 dbsNorthwind.OpenRecordset("Employees", dbOpenDynaset) 
 
 ' Get data from the user. 
 strFirstName = Trim(InputBox( _ 
 "Enter first name:")) 
 strLastName = Trim(InputBox( _ 
 "Enter last name:")) 
 
 ' Proceed only if the user actually entered something 
 ' for both the first and last names. 
 If strFirstName <> "" and strLastName <> "" Then 
 
 ' Call the function that adds the record. 
 AddName rstEmployees, strFirstName, strLastName 
 
 ' Show the newly added data. 
 With rstEmployees 
 Debug.Print "New record: " & !FirstName & _ 
 " " & !LastName 
 ' Delete new record because this is a demonstration. 
 .Delete 
 End With 
 
 Else 
 Debug.Print _ 
 "You must input a string for first and last name!" 
 End If 
 
 rstEmployees.Close 
 dbsNorthwind.Close 
 
End Sub 
 
Function AddName(rstTemp As Recordset, _ 
 strFirst As String, strLast As String) 
 
 ' Adds a new record to a Recordset using the data passed 
 ' by the calling procedure. The new record is then made 
 ' the current record. 
 With rstTemp 
 .AddNew 
 !FirstName = strFirst 
 !LastName = strLast 
 .Update 
 .Bookmark = .LastModified 
 End With 
 
End Function