Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address <> "$C$5" Then Exit Sub
Range(Target.Offset(1), Target.Offset(500)).Clear
On Error Resume Next
With Workbooks("Classeur B.xls").Sheets(Target.Value).Range("A2:A501")
If Err Then Exit Sub
.Copy Target.Offset(1)
Target.ColumnWidth = .ColumnWidth
End With
Target.Select
End Sub