2016-11-22 58 views
0

在VBA編程中,我是初學者。使用活動單元格查找範圍名稱

我有一個單元是命名範圍的一部分。使用該活動單元格,我希望能夠找到該單元格所屬的範圍,並將其作爲Range對象傳遞給VBA函數或子例程。

任何人都可以提供有關如何進行的指導,或者這是不可能的嗎?

提前致謝!

+5

單個單元格可以是幾個範圍的一部分,你想要列出所有這些? –

回答

2

這是一個簡單的例子。

該代碼檢查所選單元是否是命名範圍的一部分。如果是這樣,命名範圍傳遞給一個函數:

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 
+1

或者,您可以使用:MyFunc = Named_Range.Cells.Count> 2 – 2016-11-22 16:47:44

+0

不應該檢查單個單元格命名的範圍嗎?並忽略'Print_Area'和'_FilterDatabase'範圍?我只會閉嘴 - 你確實說了簡單的example_,因此顯示了所需的過程。 :) –

相關問題