Just a comment about the code in Post #1. Why is the "Call" command used?
The code should be
Code:
With Me.Recordset
Do While Not .EOF
If !cmBOX Then
.Edit
!cmBOX = False
.Update
End If
.MoveNext
Loop
End With
The "Call" command is not necessary and shouldn't be used.
Also, I wouldn't use the form record set. Of course it will be slow because you are having to update the screen every time the current record changes.
I would think creating a record set in memory (code) would be faster.
Code:
Dim rs As DAO.Recordset
Set rs = Me.Recordset
With Me.Recordset
Do While Not .EOF
If !cmBOX Then
.Edit
!cmBOX = False
.Update
End If
.MoveNext
Loop
End With
rs.close
Set rs = Nothing
But the fastest method is using a query!!