I threw together this which seemed to work.
Private Sub txtDateReceived_BeforeUpdate(ByVal Cancel As MSForms.ReturnBoolean)
If ((Myform.txtDateReceived.Value) <> "") Then
If (Not IsDate(Myform.txtDateReceived.Value)) Then
MsgBox "NOt a proper date"
Myform.txtDateReceived.SetFocus
Cancel = True
Else
If (DateDiff("D", Myform.txtDateReceived.Value, Now) < 0) Then
MsgBox "Date may not be a future date"
Myform.txtDateReceived.SetFocus
Cancel = True
ElseIf (DateDiff("D", Myform.txtDateReceived.Value, Now) > 100) Then
msg = "Date may not be more than 100 days in the past"
msg = msg & Chr(13) & Myform.txtDateReceived & " is "
msg = msg & DateDiff("D", Myform.txtDateReceived.Value, Now) & "
ago"
MsgBox msg
Myform.txtDateReceived.SetFocus
Cancel = True
Else
Cancel = False
End If
End If
Else
Cancel = False
End If
End Sub