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