EXCEL VBA检查是否只有用户点击列A

如何检查用户是否点击列A? 我试过使用:

if selection = worksheets(Sheet1).range("A:A") then *do something* else exit sub end sub 

不pipe用。 请指导我 谢谢。

如果您需要检查哪一列是当前选定的范围,您可以通过两种方式进行:

  1. 在涉及单个单元格的情况下,我们可以说Activecell等于Selection 。 所以你可以使用这个代码:

     If Activecell.Column = 1 then *do something* else exit sub end sub 
  2. 可能发生的情况是您的select范围比单个单元大。 如果你想检查它的一部分(左列)是否在列A内,你可以使用下面的代码:

     If Selection.Columns(1).Column = 1 then *do something* else exit sub end sub 

编辑后,从下面的评论的其他问题:

要将所有三个条件都包含在一张支票中,我们可以这样做(上面的第一个选项足够好):

  If Activecell.Column = 1 And Selection.Cells.Count = 1 And Activecell.Offset(0,1) <> "" Then *do something* else exit sub end sub 

使用Target.Column

 Private Sub Worksheet_SelectionChange(ByVal Target As Range) If Target.Column = 1 End If End Sub