Hey guys,
I'm having a bit of trouble with a particular feature for my database at work. I'm using Access 2013 but working in a 2003-2007 (.mdb) database as it needs to work on everyone else's computers (not that this should affect this particular issue).
I'm trying to get fields on a form to be highlighted when required data is not entered and the user attempts to progress to the next stage. Here's a picture of the form I'm working on. When the user clicks "Add Drawing" I would like all empty fields to be highlighted and a messagebox displayed to inform them they need to fill out the rest of the fields before the record can be added.

The issue is that while the code seems to work somewhat, it appears to highlight the control before it (or sometimes after it) and won't un-highlight itself once filled and the "Add Drawing" button is clicked again (by the way, the button is actually a label but I don't think that's an issue either). Here's a picture of the form with this problem.

NOTE: In the code below I have the final step commented out as I'm more interested in getting the rest working first.
Any help with my code would be greatly appreciated! Thanks in advance! 
Code:
Private Sub AddButton_Click()
Dim ctl As Control
'------Reset all control formatting------
For Each ctl In Me.Controls
Select Case ctl.ControlType
Case acTextBox, acComboBox
With ctl
.BorderColor = Val("#A6A6A6")
.BorderWidth = Val("Hairline")
.BorderStyle = 1
End With
End Select
Next ctl
'------Highlight controls if empty------
For Each ctl In Me.Controls
Select Case ctl.ControlType
Case acTextBox, acComboBox
If Len(Nz(ctl.Value, vbNullString)) = 0 Then
With ctl
.BorderColor = vbRed
.BorderWidth = 1
.BorderStyle = 1
End With
End If
End Select
Next ctl
MsgBox "Missing required fields." & vbCrLf & "Please fill in all emtpty fields and try again.", vbCritical, "Can't save drawing"
'------Add drawing if all controls filled------
' DoCmd.RunCommand acCmdSaveRecord
' Beep
' MsgBox "Drawing saved!", vbOKOnly, "Add a Drawing"
End Sub