Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Count > 1 Then Exit Sub
If Not Intersect(Range("B2:B500,H2:H500,P2:P500"), Target) Is Nothing Then
UserForm2.Left = Target.Offset(1, 1).Left + 20
UserForm2.Top = Target.Offset(1, 1).Top + 96 - ActiveWindow.VisibleRange.Top
UserForm2.Show
End If
End Sub