0
在Excel 2013中,我在一張參考數據上使用命名範圍來引用另一張紙上一堆公式中的常量。在範圍旁顯示範圍名稱
有什麼方法可以顯示範圍本身旁邊的範圍名稱?例如,如果我的單元格AB23
名爲SC_Item
,是否有任何方法使AC23
顯示「SC_Item」,可能是沿着=RANGENAME(AB23)
(當然是完全組成)或類似的行顯示的東西?
在Excel 2013中,我在一張參考數據上使用命名範圍來引用另一張紙上一堆公式中的常量。在範圍旁顯示範圍名稱
有什麼方法可以顯示範圍本身旁邊的範圍名稱?例如,如果我的單元格AB23
名爲SC_Item
,是否有任何方法使AC23
顯示「SC_Item」,可能是沿着=RANGENAME(AB23)
(當然是完全組成)或類似的行顯示的東西?
除非有內置的方法(我還沒有使用2013),那麼這段代碼將完成這項工作。
它將檢查目標單元格是否位於命名範圍內,並且適用於單個單元格命名範圍或單元格是更大命名範圍的一部分。
Public Function NamedRange(Target As Range) As String
Dim vName As Variant
For Each vName In ThisWorkbook.Names
If Not Intersect(Target, Range(vName)) Is Nothing Then
NamedRange = vName.Name
Exit For
End If
Next vName
End Function
這將工作,如果你命名的範圍只是一個單元格(儘管我敢肯定還有更好的方法)。
Public Function NamedRange1(Target As Range) As String
On Error GoTo ERROR_HANDLER
NamedRange1 = Target.Name.Name
On Error GoTo 0
Exit Function
ERROR_HANDLER:
Select Case Err.Number
Case 1004 'Application-defined or object-defined error.
NamedRange1 = Target.Address
Resume Next
Case Else
MsgBox "Error " & Err.Number & vbCr & _
" (" & Err.Description & ") in procedure Module1.NamedRange1."
Application.EnableEvents = True
End Select
End Function
NamedRange1完美地工作 - 謝謝! –