Sub MyHeaderCheck()
Dim hdrs()
Dim i As Long
Dim c As Long
Dim str As String
' Set headers values to store in array
hdrs = Array("Mark", "Class", "Grade", "Status")
' Find last column with entry in header row (row 1)
c = Cells(1, Columns.Count).End(xlToLeft).Column
' Loop through all headers on sheet
For i = 1 To c
' See if header is found in arrary
If Not IsNumeric(Application.Match(Cells(1, i), hdrs(), 0)) Then
' If not, add to our string
str = str & Cells(1, i) & ","
End If
Next i
' See if any unmatched values
If Len(str) > 0 Then
MsgBox "The following are new headers:" & vbCrLf & Left(str, Len(str) - 1), vbOKOnly
Else
MsgBox "No new headers!", vbOKOnly
End If
End Sub