I noticed that if I ran the userform and didn't fill in all the fields, it would give me the message box with the list of empty fields. If I filled in everything, and clicked on the button again, I still get a message box, even though everything is filled in now. Why is that? Does it need to be reset somehow so each time it checks the controls, it starts fresh?
Move the messagebox call up to above the end if as shown below. Then it only runs if there is an empty textbox.


[VBA]Private Sub CommandButton1_Click()
Dim msg As String
Dim var
Call MyErrTraps
If bolHasErrors Then
For var = 0 To UBound(ErrMessages)
msg = msg & ErrMessages(var) & strEmpty & _
vbCrLf
Next
MsgBox strSaneNames & msg
End If
Unload Me
End Sub[/VBA]