Option Explicit
Private oPrevRange As Range
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
With [B1]
If Union(Target, [A1:C1]).Address <> [A1:C1].Address Then
.ID = ""
End If
If Target.Address = [C1].Address Then
If .ID = [A1].Address Then
MsgBox "Hello"
End If
End If
If Target.Address = .Address Then
.ID = oPrevRange.Address
End If
End With
Set oPrevRange = Target
End Sub