Bonjour le fil, bonjour le forum,
Très en retard, j'envoie quand même :
Sub Macro1()
Dim OS As Worksheet 'déclare la variable OS (Onglet Source)
Dim OD As Worksheet 'déclare la variable OD (Onglet Destination)
Dim TV As Variant 'déclare la variable TV (Tableau des Valeurs)
Dim I As Integer 'déclare la variable I (Incrément)
Dim DEST As Range 'déclare la variable DEST (cellule de DESTination)
Set OS = Worksheets("Feuil1") 'définit l'onglet OS
Set OD = Worksheets("Feuil2") 'définit l'onglet OD
OD.Cells.Clear 'efface toutes les cellules de l'onglet OD
TV = OS.Range("A1").CurrentRegion 'définit le tableau des valeurs TV
For I = 1 To UBound(TV, 1) 'boucle sur toutes les lignes I du tableau des valerus TV
'définit la cellule de destination DEST (A1 si A1 est vide, sinon la première cellule vide de la colonne A de l'onglet OD)
If OD.Range("A1").Value = "" Then Set DEST = OD.Range("A1") Else Set DEST = OD.Cells(Application.Rows.Count, "A").End(xlUp).Offset(1, 0)
'renvoie la donnée ligne I colonne 1 de TV dans la cellule DEST redimensionnée au nombre de lignes de la valeur ligne I en colonne 2 de TV
DEST.Resize(TV(I, 2), 1).Value = TV(I, 1)
Next I
OD.Columns(1).NumberFormat = OS.Range("A1").NumberFormat 'formate la colonne 1 (=A)de l'onglet OD
End Sub