I think the recordset accesses were eating up the time. If you have time, try this modification of your code:
Code:
Dim db As DAO.Database
Dim rst As DAO.Recordset
Dim myMsg As Byte
Dim RCount As Integer
Dim rstCount As Double
Dim RN01 As Integer
Dim RN02 As Integer
Dim RN03 As Integer
Dim RN04 As Integer
Dim RN05 As Integer
Dim RN06 As Integer
Dim N1 As Integer
Dim N2 As Integer
Dim N3 As Integer
Dim N4 As Integer
Dim N5 As Integer
Dim N6 As Integer
RN01 = Forms!fmResult!N01
RN02 = Forms!fmResult!N02
RN03 = Forms!fmResult!N03
RN04 = Forms!fmResult!N04
RN05 = Forms!fmResult!N05
RN06 = Forms!fmResult!N06
Set db = CurrentDb()
Set rst = db.OpenRecordset("Customers")
rst.MoveLast
rst.MoveFirst
RCount = 0
rstCount = 0
Do Until rst.EOF
N1 = rst!N01
N2 = rst!N02
N3 = rst!N03 'one disk access for data
N4 = rst!N04
N5 = rst!N05
N6 = rst!N06
' tests use mem var, not disk access
If RN01 = N1 Then RCount = RCount + 1
If RN01 = N2 Then RCount = RCount + 1
If RN01 = N3 Then RCount = RCount + 1
If RN01 = N4 Then RCount = RCount + 1
If RN01 = N5 Then RCount = RCount + 1
If RN01 = N6 Then RCount = RCount + 1
If RN02 = N1 Then RCount = RCount + 1
If RN02 = N2 Then RCount = RCount + 1
If RN02 = N3 Then RCount = RCount + 1
If RN02 = N4 Then RCount = RCount + 1
If RN02 = N5 Then RCount = RCount + 1
If RN03 = N6 Then RCount = RCount + 1
If RN03 = N1 Then RCount = RCount + 1
If RN03 = N2 Then RCount = RCount + 1
If RN03 = N3 Then RCount = RCount + 1
If RN03 = N4 Then RCount = RCount + 1
If RN03 = N5 Then RCount = RCount + 1
If RN03 = N6 Then RCount = RCount + 1
If RN04 = N1 Then RCount = RCount + 1
If RN04 = N2 Then RCount = RCount + 1
If RN04 = N3 Then RCount = RCount + 1
If RN04 = N4 Then RCount = RCount + 1
If RN04 = N5 Then RCount = RCount + 1
If RN04 = N6 Then RCount = RCount + 1
If RN05 = N1 Then RCount = RCount + 1
If RN05 = N2 Then RCount = RCount + 1
If RN05 = N3 Then RCount = RCount + 1
If RN05 = N4 Then RCount = RCount + 1
If RN05 = N5 Then RCount = RCount + 1
If RN05 = N6 Then RCount = RCount + 1
If RN06 = N1 Then RCount = RCount + 1
If RN06 = N2 Then RCount = RCount + 1
If RN06 = N3 Then RCount = RCount + 1
If RN06 = N4 Then RCount = RCount + 1
If RN06 = N5 Then RCount = RCount + 1
If RN06 = N6 Then RCount = RCount + 1
rst.Edit
rst!Mcount = RCount
rst.Update
rst.MoveNext
RCount = 0
rstCount = rstCount + 1
Loop
myMsg = MsgBox("We are done", vbOKOnly)