Sub test()
Dim f As Worksheet, ff As Worksheet, i&
Set f = Sheets("Referentiel")
Set ff = Sheets("Principal")
Application.ScreenUpdating = False
f.Range(f.Cells(3, "B"), f.Cells(Rows.Count, "B").End(3)).Name = "CODES"
For i = 2 To ff.Cells(Rows.Count, "C").End(3).Row
If IsError(Application.Match(ff.Cells(i, "C"), [CODES], 0)) Then
ff.Cells(i, "C").Interior.Color = vbRed
ff.Cells(i, "D") = "CODE ERRONE"
End If
Next
End Sub