Sub transferer()
Dim TabToTransfert() As Variant
Dim DateExport As Date
ReDim TabToTransfert(1 To 6, 1 To 4) 'on définit le tableau de données à transferer
With Sheets("Base") 'avec la feuille Base
DateExport = .Range("B2") 'on récupère la date
Onglet = Format(DateExport, "mmmm") 'on en déduit le nom de l'onglet qui correspond au mois de la date
For i = LBound(TabToTransfert, 1) To UBound(TabToTransfert, 1) 'pour chaque ligne du tableau
TabToTransfert(i, 1) = .Cells(i + 5, 3) + .Cells(i + 5, 4) 'on fait la somme des colonnes Desset + Fromage
TabToTransfert(i, 2) = .Cells(i + 5, 5) 'on met la quantité des entrées
TabToTransfert(i, 3) = .Cells(i + 5, 6) 'on met la quantité des légumes
TabToTransfert(i, 4) = .Cells(i + 5, 7) 'on met la quantité des viandes
Next i
PetitDej = .Range("A6") 'on récupère le petit dej
PersVeilleur = .Range("A10") 'on récupère la donnée
TotalJournée = .Range("A14") 'on récupère la donnée
TotalPatient = .Range("A18") 'on récupère la donnée
End With
With Sheets(Onglet) 'dans la feuille adéquate
'.Activate
Set trouve = .Range("B:AI").Find(Format(DateExport, "dddd d mmmm yyyy"), LookIn:=xlValues) 'on cherche la date dans les colonnes B à AI
If Not trouve Is Nothing Then 'si on trouve la date
'MsgBox trouve.Address
trouve.Offset(1, 2).Resize(UBound(TabToTransfert, 1), UBound(TabToTransfert, 2)) = TabToTransfert 'on colle le tablo à la bonne place (on se décalle par rapport à la date
trouve.Offset(8, 1) = PetitDej 'on colle le petitdej
End If
Set trouve = .Range("AK23:AK53").Find(Format(DateExport, "dddd d mmmm yyyy"), LookIn:=xlValues) 'on cherche la date dans le tableau de synthèse (entre AK23 et AK53)
If Not trouve Is Nothing Then 'si on trouve la date
'MsgBox trouve.Address
trouve.Offset(0, 2) = TotalJournée 'on place les infos
trouve.Offset(0, 3) = TotalPatient
trouve.Offset(0, 6) = PersVeilleur
End If
End With
End Sub