Table of contents
Collapse the table of content
Expand the table of content

Form.Dirty Property (Access)

office 365 dev account|Last Updated: 6/12/2017
1 Contributor

You can use the Dirty property to determine whether the current record has been modified since it was last saved. Read/write Boolean.


expression. Dirty

expression A variable that represents a Form object.


For example, you may want to ask the user whether changes to a record were intended and, if not, allow the user to move to the next record without saving the changes.

When a record is saved, Microsoft Access sets the Dirty property to False. When a user makes changes to a record, the property is set to True.


The following example enables the btnUndo button when data is changed. The UndoEdits( ) subroutine is called from the AfterUpdate event of text box controls. Clicking the enabled btnUndo button restores the original value of the control by using the OldValue property.

Sub UndoEdits() 
 If Me.Dirty Then 
 Me!btnUndo.Enabled = True ' Enable button. 
 Me!btnUndo.Enabled = False ' Disable button. 
 End If 
End Sub 

Sub btnUndo_Click() 
 Dim ctlC As Control 
 ' For each control. 
 For Each ctlC in Me.Controls 
 If ctlC.ControlType = acTextBox Then 
 ' Restore Old Value. 
 ctlC.Value = ctlC.OldValue 
 End If 
 Next ctlC 
End Sub

See also


Form Object

© 2018 Microsoft