Bonjour Hicham, bonjour le forum,
Une option avec l'événementielle Change ci-dessous :
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 1 And Target.Row > 1 Then
If Target.Offset(0, 2).Value = "" Then
MsgBox "Il n'y a pas de valeur en colonne D !"
Target.Offset(0, 2).Select
End If
End If
End Sub