Bonjour Seblan57 ;
Voici un code VBA à tester (pense à faire une copie avant et à renommer tes onglets ou les changer dans le code de la macro)
(La macro se base actuellement sur la colonne A)
Sub TransférerRdvVersJour()
' Auteur : https://www.linkedin.com/in/spilerstheo/
Dim wsGeneral As Worksheet
Dim wsJour As Worksheet
Dim DernièreLigne As Long
' Définir l'onglet général et l'onglet jour ici (ajustez les noms si nécessaire)
Set wsGeneral = ThisWorkbook.Sheets("general")
Set wsJour = ThisWorkbook.Sheets("jour_désiré")
' Trouver la dernière ligne avec des données dans l'onglet général
DernièreLigne = wsGeneral.Cells(wsGeneral.Rows.Count, "A").End(xlUp).Row
' Copier la ligne depuis l'onglet général vers l'onglet jour
wsGeneral.Rows(DernièreLigne).Copy wsJour.Rows(wsJour.Cells(wsJour.Rows.Count, "A").End(xlUp).Row + 1)
' Effacer la ligne copiée de l'onglet général (facultatif, à supprimer si vous souhaitez conserver les données dans l'onglet général)
wsGeneral.Rows(DernièreLigne).ClearContents
' Réinitialiser la sélection
wsGeneral.Cells(1, 1).Select
End Sub
Un autre code à tester :
' Auteur : https://www.linkedin.com/in/spilerstheo/
Sub TransfererRDV()
Dim wsGeneral As Worksheet, wsJour As Worksheet
Dim derniereLigne As Integer, i As Integer
Dim dateRDV As Date
Set wsGeneral = ThisWorkbook.Sheets("General")
derniereLigne = wsGeneral.Cells(wsGeneral.Rows.Count, "A").End(xlUp).Row
For i = 2 To derniereLigne
If IsDate(wsGeneral.Cells(i, "X")) Then 'Remplacer "X" par le numéro de la colonne de la date
dateRDV = wsGeneral.Cells(i, "X").Value
Set wsJour = ThisWorkbook.Sheets(Format(dateRDV, "dd-mm-yyyy"))
wsGeneral.Rows(i).Copy Destination:=wsJour.Rows(wsJour.Cells(wsJour.Rows.Count, "A").End(xlUp).Row + 1)
End If
Next i
End Sub
Cordialement,
Parrish