J'ai pu résoudre les deux points en modifiant le code comme ceci :
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
Dim DateDebutex As Date
Dim DateFinEx As Date
mafeuille = ActiveSheet.Name
With mafeuille
On Error Resume Next
DateDebutex = Cells(35, 18)
DateFinEx = Cells(35, 22)
If TextBox1.Value < DateDebutex Then
Cancel = True
Label1.ForeColor = RGB(255, 0, 0)
MsgBox "La date de début ne peut être inférieure au mois du bulletin": TextBox1.SetFocus: Exit Sub
ElseIf TextBox1.Value > DateFinEx Then
Cancel = True
Label1.ForeColor = RGB(255, 0, 0)
MsgBox "La date de fin ne peut être supérieure au mois du bulletin": TextBox1.SetFocus: Exit Sub
SendKeys "{tab}", False
End If
End With
End Sub
merci barbin