在VBA编程中,我是初学者。使用活动单元格查找范围名称
我有一个单元是命名范围的一部分。使用该活动单元格,我希望能够找到该单元格所属的范围,并将其作为Range对象传递给VBA函数或子例程。
任何人都可以提供有关如何进行的指导,或者这是不可能的吗?
提前致谢!
在VBA编程中,我是初学者。使用活动单元格查找范围名称
我有一个单元是命名范围的一部分。使用该活动单元格,我希望能够找到该单元格所属的范围,并将其作为Range对象传递给VBA函数或子例程。
任何人都可以提供有关如何进行的指导,或者这是不可能的吗?
提前致谢!
这是一个简单的例子。
该代码检查所选单元是否是命名范围的一部分。如果是这样,命名范围传递给一个函数:
Sub Main()
Dim nm As Integer
For nm = 1 To ActiveWorkbook.Names.Count
If Not Intersect(Selection, Range(ActiveWorkbook.Names(nm).Name)) Is Nothing Then
Debug.Print MyFunc(Range(ActiveWorkbook.Names(nm).Name)) // Prints TRUE or FALSE
End If
Next nm
End Sub
Function MyFunc(Named_Range As Range) As Boolean
MyFunc = Named_Range.Cells.Count > 2 ~~>Courtesy of `Thomas Inzina`
End Function
或者,您可以使用:MyFunc = Named_Range.Cells.Count> 2 – 2016-11-22 16:47:44
不应该检查单个单元格命名的范围吗?并忽略'Print_Area'和'_FilterDatabase'范围?我只会闭嘴 - 你确实说了简单的example_,因此显示了所需的过程。 :) –
单个单元格可以是几个范围的一部分,你想要列出所有这些? –