Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Dim r As Range
With Sheets("Feuil1")
Set r = Intersect(.Range("A2:A" & .Rows.Count), .UsedRange)
If r Is Nothing Then Exit Sub
For Each r In r
If IsDate(r) Then
If r(1, 6) = "" Or r(1, 7) = "" Then
Cancel = True
r(1, 7 + (r(1, 6) = "")).Select
MsgBox "La plage " & r(1, 6).Resize(, 2).Address(0, 0) & " doit être remplie..."
Exit For
End If
End If
Next
End With
End Sub