Or as June suggests (simpler)
Code:
Sub CalcDate2()
Dim r As DAO.Recordset
Dim sSQL As String
Dim pDOW As String
sSQL = "SELECT DOW, DOM, WeekEnding FROM tblImport WHERE DOM IS NULL;"
'DOW = day of week - Mon, Tue, etc
'DOM = day of month - 4/2/2019
Set r = CurrentDb.OpenRecordset(sSQL)
If Not r.BOF And Not r.EOF Then
r.MoveLast
r.MoveFirst
Do Until r.EOF
pDOW = r!DOW
r.Edit
r!DOM = r!WeekEnding - Switch([pDOW] = "Monday", 6, [pDOW] = "Tuesday", 5, [pDOW] = "Wednesday", 4, [pDOW] = "Thursday", 3, [pDOW] = "Friday", 2, [pDOW] = "Saturday", 1, [pDOW] = "Sunday", 0)
r.Update
r.MoveNext
Loop
End If
r.Close
Set r = Nothing
End Sub
why didn't I think of that??