Bonjour Nonno, le forum,
Un essai.....
Private Sub Worksheet_Change(ByVal Target As Range)
Dim tablo, tabloR(), k%, i
tablo = Sheets("Archivage").Range("A1").CurrentRegion
If Not Application.Intersect(Target, Range("E14")) Is Nothing Then
Cancel = True
k = 0
For i = 1 To UBound(tablo, 1)
If Right(tablo(i, 17), 7) = Right(Target.Value, 7) Then 'mois & année
ReDim Preserve tabloR(1 To 4, 1 To k + 1)
tabloR(1, 1 + k) = tablo(i, 3)
tabloR(2, 1 + k) = tablo(i, 4)
tabloR(3, 1 + k) = tablo(i, 9)
tabloR(4, 1 + k) = tablo(i, 10)
k = k + 1
End If
Next i
Range("A21").CurrentRegion.Offset(1, 0).ClearContents
On Error Resume Next
Range("A22").Resize(UBound(tabloR, 2), 4) = Application.Transpose(tabloR)
End If
End Sub
Cordialement,