获取用户select的范围

如何通过用户鼠标input来select一系列单元格,以便使用VBA进一步处理?

您可以遍历Selection对象来查看所选内容。 以下是Microsoft的代码片段(http://msdn.microsoft.com/zh-cn/library/aa203726(office.11​​).aspx):

Sub Count_Selection() Dim cell As Object Dim count As Integer count = 0 For Each cell In Selection count = count + 1 Next cell MsgBox count & " item(s) selected" End Sub 

Selection是VBA中自己的对象。 它的function很像一个Range对象。

虽然select和范围不共享所有相同的属性和方法,但为了便于使用,创build范围并将其设置为等于select可能是有意义的,那么可以像编写任何其他范围一样以编程方式处理它。

 Dim myRange as Range Set myRange = Selection 

有关进一步阅读,请查看MSDN文章 。

这取决于你的意思是“得到select的范围”。 如果你的意思是获取范围地址 (如“A1:B1”),那么使用Selection对象的Address属性 – 正如Michael所说,Selection对象非常类似于Range对象,所以大多数的属性和方法对它起作用。

 Sub test() Dim myString As String myString = Selection.Address End Sub