Because I can't see your dB, you do have a field in the table named "NMT"?
On a COPY of your dB, run this query (SQL).
"UPDATE Master SET NMT = TRUE"
Now run your code. If you single step (step debug) through your code you will be able to see the variables/data change.
I made a couple of changes in your code
Code:
Public Sub UpdateNMTStatus()
Dim db As DAO.Database
Dim rs As DAO.Recordset
Set db = CurrentDb
Set rs = db.OpenRecordset("MASTER", dbOpenTable)
If Not (rs.BOF And rs.EOF) Then
rs.MoveLast
'debugging info
MsgBox "Record count = " & rs.RecordCount
rs.MoveFirst
Do While Not rs.EOF
If rs!CLASSUP <= Date Then
rs.Edit
rs!NMT = False
rs.Update
End If
rs.MoveNext
Loop
End If
rs.Close
Set rs = Nothing
Set db = Nothing
End Sub
You could attach your dB for analysis.........
Edit: Changed the FALSE to TRUE in the SQL. ( I had it backwards)