Private Sub Worksheet_Change(ByVal Target As Range)
Set Target = Intersect(Target, Range("C2:C" & Rows.Count), UsedRange)
If Target Is Nothing Then Exit Sub
Application.ScreenUpdating = False
Application.EnableEvents = False 'désactive les évènements
If FilterMode Then ShowAllData 'si la feuille est filtrée
Columns(4).Insert 'colonne auxilaire
For Each Target In Target.Areas 'si entrées multiples (copier-coller)
Target.Offset(, 1) = "=IF(ISNUMBER(RC[-1]),RC[-1],IFERROR(VLOOKUP(RC1,OFFSET('Feuil2'!C1,,,,COUNTA('Feuil2'!R1)),MATCH(RC[-1],'Feuil2'!R1,0),0),""""))" 'Feuil2 à adapter
Target = Target.Offset(, 1).Value2 'supprime la formule
Next Target
Columns(4).Delete 'supprime la colonne auxiliaire
Application.EnableEvents = True 'réactive les évènements
End Sub