Re
Essaie en remplaçant le code par celui-ci :
Private Sub Worksheet_Change(ByVal Target As Range)
Dim lg As Integer, dlg As Integer
If Target.Count > 1 Then Exit Sub
If Not Intersect(Target, Range("A5, B5, C5, D5, E5")) Is Nothing Then
On Error Resume Next
dlg = Range("R:R").Find("*", LookIn:=xlValues, SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row + 3
If dlg = 0 Then dlg = 5: Err = 0
lg = Sheets("Feuil" & Target.Column).Range("L:L").Find(Target, LookIn:=xlValues).Row
If Err > 0 Then
MsgBox "La valeur ou la feuille Feuil" & Target.Column & " n'existe pas": Exit Sub
Else:
Sheets("Feuil" & Target.Column).Range("L" & lg & ":W" & lg + 8).Copy Range("G" & dlg)
End If
End If
End Sub
Les chiffres sont placés entre A5 et E5. On aurait pu aussi n'utiliser qu'une seule cellule pour reprendre les infos dans les feuilles concernées.
A toi de voir ce qui te convient le mieux.
je me demande si je n'ai pas eu déjà recours à tes lumières il y a une dizaine d'années.
Possible mais sous quel pseudo et quel site ?
Cordialement