Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address <> "$A$1" Then Exit Sub
Dim dossier$, chemin$, nomfichier$, F As Worksheet
dossier = "B" 'nom du dossier cousin, à adapter
chemin = Left(ThisWorkbook.Path, InStrRev(ThisWorkbook.Path, "\")) & dossier
nomfichier = [A1] & ".csv" 'nom du fichier csv à copier
Set F = Feuil2 'CodeName à adapter
Application.ScreenUpdating = False
On Error Resume Next 'si le fichier n'existe pas
F.Cells.ClearContents 'RAZ
With Workbooks.Open(chemin & "\" & nomfichier).Sheets(1)
.UsedRange.TextToColumns .UsedRange.Cells(1), xlDelimited, Semicolon:=True 'commande Convertir
F.[A1].Resize(.UsedRange.Rows.Count, .UsedRange.Columns.Count) = .UsedRange.Value
F.[A1].Resize(.UsedRange.Rows.Count, .UsedRange.Columns.Count).Columns.AutoFit 'ajustement largeur
.Parent.Close False
End With
If Application.CountA(F.UsedRange) Then F.Activate 'facultatif
End Sub