Option Explicit
Private Sub Workbook_Open()
Dim DCyc As Date, NoterDCyc As Boolean
On Error Resume Next
DCyc = [DébutCycle]
If Err Then DCyc = Date: NoterDCyc = True
On Error GoTo 0
Select Case Date - DCyc
Case Is >= 7: DCyc = DCyc + 35: NoterDCyc = True
Case Is >= 0: MsgBox "Coucou"
End Select
If NoterDCyc Then ThisWorkbook.Names.Add "DébutCycle", _
"=DATEVALUE(""" & Format(DCyc, "dd/mm/yyyy") & """)"
End Sub