Excel 选择行后打开InputBox

Excel 选择行后打开InputBox,excel,vba,inputbox,Excel,Vba,Inputbox,我有一个简单的宏,当选择范围中的一个单元格时,它会打开一个输入框: Private Sub Worksheet_SelectionChange(ByVal Target As Range) If Not Application.Intersect(Target, Range("H18:H" & Worksheets("LookUpLists").Cells(2, "N").Value - 1)) Is Nothing Then UserForm1.Show End If

我有一个简单的宏,当选择范围中的一个单元格时,它会打开一个输入框:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

If Not Application.Intersect(Target, Range("H18:H" &   Worksheets("LookUpLists").Cells(2, "N").Value - 1)) Is Nothing Then
    UserForm1.Show
End If

End Sub
我面临的问题是,当我选择整行时,InputBox也会打开


您知道如何避免这种情况吗?

检查单元格的数量:

If Not Application.Intersect(Target, Range("H18:H" & _
    Worksheets("LookUpLists").Cells(2, "N").Value - 1)) Is Nothing And _
        Target.Cells.Count = 1 Then '// <~~ Check number of cells selected is 1

    Userform1.Show

End If
如果不是应用程序。相交(目标、范围(“H18:H”)和_
工作表(“LookUpLists”).Cells(2,“N”).Value-1)为空且_

Target.Cells.Count=1,则“/如果要允许所有选择(1个或更多)不是整行,则应该这样做

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

Dim bEntireRow as Boolean
    With Target
        bEntireRow = .Address = .EntireRow.Address
        '/ Excel evaluates (.Address = .Entirerow.address) as a Boolean True/False and assigns it to bEntireRow
    End With

    If bEntireRow = false and Not Application.Intersect(Target, Range("H18:H" &   Worksheets("LookUpLists").Cells(2, "N").Value - 1)) Is Nothing Then
        UserForm1.Show
    End If

End Sub