Private Sub Worksheet_Change(ByVal Target As Range)
Dim rng As Range
Dim cell As Range
' Apply this to column B
Set rng = Intersect(Target, Columns("B:B"))
' Exit sub if no updates in desired column
If rng Is Nothing Then Exit Sub
Application.EnableEvents = False
' Loop through each cell
For Each cell In rng
' Skip line 1
If cell.Row > 1 Then
' Check to see if they entered "Y" or "N"
If UCase(cell) = "Y" Or UCase(cell) = "N" Then
cell = UCase(cell)
Else
' Check for any other entry
If Len(cell) > 0 Then
cell.ClearContents
MsgBox "You entered an invalid entry", vbOKOnly, "TRY AGAIN!"
End If
End If
End If
Next cell
Application.EnableEvents = True
End Sub