Bonjour,
Tu cherchais le nouveau calendrier ... il n'y en a pas, il n'y a que du code.
Quand on le démarrer, le calendrier se construit (des shapes) ... puis quand on le ferme, il se supprime.
En passant ... Merci à Steelson pour le calendrier ...
Est-ce que tu as fait tes devoirs ? Je l'espère ...
En VBE > dans "Feuil1(Formulaire rechercher)" > remplace cette macro >
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Cancel = True
Set zSaisie = Range("E14")
If Not Intersect(zSaisie, Target) Is Nothing And Target.Count = 1 Then
ModuleCalendrier.affichercalendrier
Exit Sub
End If
Set zSaisie = Range("E16")
If Not Intersect(zSaisie, Target) Is Nothing And Target.Count = 1 Then
ModuleCalendrier.affichercalendrier
Exit Sub
End If
End Sub
Puis dans "ModuleCalendrier" > remplace cette macro >
Sub ChoixDate(quand)
On Error Resume Next ' cas où le calendrier est resté actif à la fermeture
Dim Sh As Object
If Not quand = 0 Then
If MSjour.Address = "$E$16" And ActiveCell.Offset(-2, 0) > 1 Then
If quand >= ActiveCell.Offset(-2, 0) Then
ActiveCell = quand
GoTo FIN
Else
MsgBox " Cette date doit être postérieure à la "" date de début "". "
Exit Sub
End If
ElseIf MSjour.Address = "$E$14" And ActiveCell.Offset(2, 0) > 1 Then
If quand <= ActiveCell.Offset(2, 0) Then
ActiveCell = quand
GoTo FIN
Else
MsgBox " Cette date doit être antérieure à la "" date de fin "". "
Exit Sub
End If
Else
ActiveCell = quand
End If
End If
FIN:
Set MSjour = Nothing
For Each Sh In ActiveSheet.Shapes
If Left(Sh.Name, Len(prefixe)) = prefixe Then Sh.Delete
Next
End Sub
Étant donné que je suis sûr que tu vas réussir >
Ceci est à coller en haut à droite de ton travail > TRÈS BIEN
ric