如果我要在EXCEL2010工作表中快速选取C列的第一个非空单元格C6,可在C1中使用Ctrl+l(向下箭头)选取;要选取数据区域右边的端点单元格D6,可在C6按Ctrl+→(向右箭头)选取;在D6位置按Ctrl+←(向左箭头),则会重新选取单元格C6。
我在VBA中利用Range对象的End属性,可以实现Ctrl+方向箭头的选取效果。
End(xlup):相当于Ctrl+↑(向上箭头)。
End(xldown):相当于Ctrl+↓(向下箭头)。
End(xltoleft):相当于Ctrl+←(向左箭头)。
End(xltoright):相当于Ctrl+→(向右箭头)。
例如在EXCEL2010表格中我要选取E列中第一个非空单元格,输入以下VBA代码即可是实现:
VBA选取特定单元格方法延伸
Sub E列第一个非空单元格()
If Range("E1") = "" Then
Range("E1").End(xlDown).Select
ElSe
Range("E1").Select
End If
End Sub
If Range("E1")=""的功能是:如果E1值为空:Range("E1").End(xlDown)相当于在E1按Ctrl+↓(向下箭头)。如果我要选取E列最后一个非空单元格,输入以下VBA代码即可实现:
Sub 选取E列最后一个非空单元格()
Range(“E2565").End(xlUp).Select
End Sub
在这里Range("E2565").End(xlUp)是指E列最后一个非空单元格需要从E列最后个单元格向上查找。当我在运行上述程序后,即可选取EXCEL2010E列数据区域中最后一个非空单元格E11。