Sub transfert()
Dim tabtemp As Variant
Dim TabResult() As Variant
Dim L As Byte
Dim MaDate As Date
Dim C As Range
'Dans la feuille 2
With Worksheets("Feuil2")
'On met dans un tableau (tabtemp) les valeurs
'de la cellule A1 à la cellule C(dernière ligne occupée colonne B)
tabtemp = .Range("A1:C" & .Range("B65536").End(xlUp).Row).Value
End With
'Dans la variable MaDate, on met la 1ère valeur récupérée du tableau, convertie en date
MaDate = CDate(tabtemp(1, 1))
'On crée un autre tableau d'une "ligne" et autant de "colonnes" que tabtemp a de lignes
ReDim Preserve TabResult(1, UBound(tabtemp, 1))
'Dans la première case du tableau, on met madate
TabResult(1, 1) = MaDate
For L = 2 To UBound(tabtemp, 1)
'On remplit le nouveau tableau avec le contenu de la 3ème "colonne" du premier tableau
TabResult(1, L) = tabtemp(L, 3)
Next
With Worksheets("Feuil1")
'On recherche la valeur de MaDate dans la 1ère colonne de la feuil1
Set C = .Range("A3:A" & .Range("A65536").End(xlUp).Row).Find(MaDate)
If Not C Is Nothing Then
'Si on la trouve, on écrit les valeurs dans la ligne correspondante
For L = 2 To UBound(TabResult, 2)
C.Offset(0, L - 1) = TabResult(1, L)
Next
End If
End With
End Sub