Bonjour à tous,
Une solution filtre
il ne faut pas de doublon dans les en-têtes, j'en ai modifié 2 ou 3, à voir.
on part de la feuille "Récap"
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Lg&
If Not Application.Intersect(Target, Range("b3")) Is Nothing Then
If Target.Count > 1 Then Exit Sub
With Sheets("Saisie Panne")
Lg = .Cells.Find("*", , , , xlByRows, xlPrevious).Row
If Target <> "" Then _
.Range("t2") = "=AND(e5>=Récap!$b$3,e5<=Récap!$b$4)" 'critère
.Range("a4:p" & Lg).AdvancedFilter Action:=xlFilterCopy, CriteriaRange:= _
.Range("t1:t2"), CopyToRange:=Range("a8:p8"), Unique:=False
.Range("t2").ClearContents
End With
If Range("e9") = "" Then MsgBox ("rien ce mois !")
End If
End Sub
Bonne journée
Claude