Excel VBA通​​过鼠标获取用户select范围的范围

这不是usedrange问题。
例如在Excel中,用户使用鼠标select一个范围(可能是空的),比方说B4:C12

在这之后,不用取消select范围用户按下macros,macros应告诉B4:C12

任何人都可以显示示例

这个macros应该是以下的一些东西:

 Sub showrng() MsgBox SelectedRange.Address(ReferenceStyle:=xlA1) End Sub 

 Sub macro1() MsgBox Selection.Address(ReferenceStyle:=xlA1, _ RowAbsolute:=False, ColumnAbsolute:=False) End Sub 

HTH!

 Sub macro1() MsgBox Selection.Address End Sub 

要么

 Sub macro1() Dim addr as String addr = Selection.Address msgbox addr ' Now, as we found the address, according to that... you can also do other operations End Sub 

由于select可以包括几个独立的范围,下面的代码显示了一个更完整的问题解决scheme:

 Public Sub SelectionTest() Dim r As Range Dim s As String Select Case Selection.Areas.Count Case 0: MsgBox "Nothing selected." Case 1: MsgBox "Selected range: " & Selection.Areas(1).Address(False, False) Case Else s = "" For Each r In Selection.Areas s = s + vbNewLine + r.Address(False, False) Next r MsgBox "Selected several areas:" & s End Select End Sub