1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
| Sub TransfereDonnees()
'Déclaration des variables
Dim i As Long
Dim iCible As Long
Dim shSource As Worksheet
Dim Sh As Worksheet
'Onglet ou se trouve les données à ventiler
Set shSource = Sheets("Fiche de Travail J")
'Copie les données dans les feuilles Pays
'Pour chaque ligne non vide de l'onglet source
For i = 1 To shSource.Range("A" & Rows.Count).End(xlUp).Row
'Instanciation de la variable avec le nom du pays correspondant à la ligne
Set Sh = Sheets(Range("C" & i).Value)
'Trouve la prochaine ligne vide sur l'onglet du pays
iCible = Sh.Range("A" & Rows.Count).End(xlUp).Row + 1
'Test si onglet vide, alors on ajoute la ligne sur la ligne 1
If iCible = 2 And Sh.Range("a1").Value = "" Then iCible = 1
'Copy de la ligne
shSource.Rows(i).Copy Sh.Range("A" & iCible)
'Ajoute la date
Sh.Range("D" & iCible).Value = Date
'Vide la ligne Copiée
shSource.Rows(i).ClearContents
Next i
End Sub |