Option Explicit
Sub CpyData()
If ActiveSheet.Name <> "Feuil1" Then Exit Sub
Dim cel As Range, nlm&, n1&, n2&, i&, j&: nlm = Rows.Count
With Worksheets("Feuil2")
n1 = Cells(nlm, 1).End(3).Row: If n1 = 8 Then Exit Sub
n2 = .Cells(nlm, 1).End(3).Row: j = 9: Application.ScreenUpdating = 0
If n2 > 8 Then .Range("A9:G" & n2).ClearContents
For i = 9 To n1
Set cel = Cells(i, 1)
With .Cells(j, 1)
.Value = cel 'A : NOM
.Offset(, 1) = cel.Offset(, 1) 'B : PRENOM
.Offset(, 2) = cel.Offset(, 3) 'C : PROFESSION
.Offset(, 3) = cel.Offset(, 2) 'D : ETABLISSEMENT
.Offset(, 4) = cel.Offset(, 6) 'E : REGION
.Offset(, 5) = cel.Offset(, 8) 'F : OBS
.Offset(, 6) = cel.Offset(, 9) 'G : CONDITION
j = j + 1
End With
Next i
.Select
End With
End Sub