Excel VBA - 使用应用程序输入框获取用户选择的单元格 - 是否可以获取用户工作表详细信息?
Excel VBA - Using Application Input Box To Get A Users Selection Of Cells - Is It Possible To Get Users Worksheet Details?
我正在尝试使用 Excel VBA 进行一些编码。 (我对使用 Excel 编码 VBA 非常陌生。)
我想做的是从 Application.InputBox 中获取用户选择的单元格。我的问题是用户将选择将位于另一个打开的作品sheet 中的单元格。我知道我可以使用 .Address 属性 获取用户选择的详细信息。问题是,这仅 returns 单元格范围并省略了文件和工作的详细信息 sheet。我的问题是,是否可以获得用户文件的详细信息和 sheet。当然,这一定是可能的,因为当用户选择他们的单元格时,它在输入框中是可见的?
非常感谢您抽出宝贵时间提出任何意见(!)
我目前使用的代码如下所示:
Sub UserSelectsCells()
Dim rng As Variant
On Error Resume Next
Set rng = Application.InputBox( _
Title:="Select Test Cells", _
Prompt:="Please Select The Cells Which Test Whether The User Has Answered The Questions Correctly", _
Type:=8)
On Error GoTo 0
'Test to ensure User Did not cancel
If rng Is Nothing Then Exit Sub
MsgBox rng.Address
Range("M10").Value = rng.Address
End Sub
您可以使用rng.Parent
获取工作表。
见
https://docs.microsoft.com/en-us/office/vba/api/excel.range.parent
您可以在工作表上使用.Parent
获取工作簿。
见
https://docs.microsoft.com/en-us/office/vba/api/excel.worksheet.parent
另请查看:
谢谢 ed2 - 你帮了大忙。在您的帮助下,我取得了很大进步,非常感谢您抽出宝贵时间 post。
是 - 我发现要获取您使用的工作簿的名称 rng.Parent.Parent.Name 并获取您使用的工作表的名称 rng.Parent.Name
我正在尝试使用 Excel VBA 进行一些编码。 (我对使用 Excel 编码 VBA 非常陌生。)
我想做的是从 Application.InputBox 中获取用户选择的单元格。我的问题是用户将选择将位于另一个打开的作品sheet 中的单元格。我知道我可以使用 .Address 属性 获取用户选择的详细信息。问题是,这仅 returns 单元格范围并省略了文件和工作的详细信息 sheet。我的问题是,是否可以获得用户文件的详细信息和 sheet。当然,这一定是可能的,因为当用户选择他们的单元格时,它在输入框中是可见的?
非常感谢您抽出宝贵时间提出任何意见(!)
我目前使用的代码如下所示:
Sub UserSelectsCells()
Dim rng As Variant
On Error Resume Next
Set rng = Application.InputBox( _
Title:="Select Test Cells", _
Prompt:="Please Select The Cells Which Test Whether The User Has Answered The Questions Correctly", _
Type:=8)
On Error GoTo 0
'Test to ensure User Did not cancel
If rng Is Nothing Then Exit Sub
MsgBox rng.Address
Range("M10").Value = rng.Address
End Sub
您可以使用rng.Parent
获取工作表。
见
https://docs.microsoft.com/en-us/office/vba/api/excel.range.parent
您可以在工作表上使用.Parent
获取工作簿。
见
https://docs.microsoft.com/en-us/office/vba/api/excel.worksheet.parent
另请查看:
谢谢 ed2 - 你帮了大忙。在您的帮助下,我取得了很大进步,非常感谢您抽出宝贵时间 post。
是 - 我发现要获取您使用的工作簿的名称 rng.Parent.Parent.Name 并获取您使用的工作表的名称 rng.Parent.Name