Bonjour Achille, Ti_chou, bonjour le forum,
Ti_chou a été plus rapide ! Tant pis, j'envoie quand même ma proposition...
Le code ci-dessous, à placer dans l'onglet correspondant, utilise la macro événementielle Change :
Private Sub Worksheet_Change(ByVal Target As Range)
'si le nombre de cellules sélectionnées est supérieur à 1 ou si
'la ligne de la cellue éditée est inférieure à 4, sort de la procédure
If Target.Cells.Count > 1 Or Target.Row < 4 Then Exit Sub
If Target.Column = 1 Then 'condition : si la cellule éditée se trouve dans la colonne 1 (=A)
'si la cellule est effacée, efface la ligne entière, sort de la procédure
If Target.Value = "" Then Target.Resize(1, 7).ClearContents: Exit Sub
Target.Offset(0, 2).Value = Year(Date) & "-" & Month(Date) & "-" & Day(Date) 'place la date en colonne C
Target.Offset(0, 3).Value = Time 'place l'heure en colonne D
Target.Offset(0, 1).Select 'sélectionne la cellule en colonne B
End If 'fin de la vondition
If Target.Column = 5 Then 'condition : si la cellule éditée se trouve dans la colonne 5 (=E)
'si la cellule est effacée, efface la date et l'heure correspondante, sort de la procédure
If Target.Value = "" Then Range(Target.Offset(0, 1), Target.Offset(0, 2)).ClearContents: Exit Sub
Target.Offset(0, 1).Value = Year(Date) & "-" & Month(Date) & "-" & Day(Date) 'place la date en colonne F
Target.Offset(0, 2).Value = Time 'place l'heure en colonne G
Target.Offset(1, -4).Select 'sélectionne la cellule en colonne A de la ligne suivante
End If
End Sub