'How to run two Worksheet_Change on one worksheet?

I have the below, that works. Change a number in 1 column and the column to the right adds the date and time.

Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Column <> 3 Then Exit Sub
    With Target.Offset(0, 1)
        .Value = Now
        .NumberFormat = "MM/DD/YYYY hh:mm AM/PM"
    End With
End Sub

I would also like to run this code on column 6.

Tried a lot of things Else, ElseIf, End If etc.

Closest I managed:

Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Column <> 3 Then Exit Sub
    With Target.Offset(0, 1)
        .Value = Now
        .NumberFormat = "MM/DD/YYYY hh:mm AM/PM"
    End With
    
    If Target.Column <> 6 Then Exit Sub
    With Target.Offset(0, 1)
        .Value = Now
        .NumberFormat = "MM/DD/YYYY hh:mm AM/PM"
    End With
End Sub


Solution 1:[1]

Your first 'If' prevent that the script continue if the target column is not 3, thus it won't execute when the column is 6.

All you have to do is change your mind, and create conditions for the desired execution.

If Target.Column = 3 Then
    With Target.Offset(0, 1)
    .Value = Now
    .NumberFormat = "MM/DD/YYYY hh:mm AM/PM"
    End With
ElseIf Target.Column = 6 Then
    With Target.Offset(0, 1)
    .Value = Now
    .NumberFormat = "MM/DD/YYYY hh:mm AM/PM"
    End With
End If

Or simplifying:

If Target.Column = 3 Or Target.Column = 6 Then
    With Target.Offset(0, 1)
    .Value = Now
    .NumberFormat = "MM/DD/YYYY hh:mm AM/PM"
    End With
End If

Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source
Solution 1