Hi,

You could use the Sheet_Change event.

i.e.

Private Sub Worksheet_Change(ByVal Target As Range)

    If Not Intersect(Target, Range("G:I, K:M, O:O")) Is Nothing Then
        Range("N" & ActiveCell.Row) = Date
    End If

End Sub