如何获得"名称框" Excel单元格的名称?

时间:2015-01-25 18:32:17

标签: excel vba variables

我在Excel中有一个单元格,我已使用Excel名称框为单元格this_cells_name指定了变量名D2

以下是Excel名称框的示例:

The Excel Name Box

我希望能够指向该单元格并将变量名称作为返回值。

我知道如何执行以下操作:

  • 使用=CELL("address",D2)并获取"$D$2"作为返回值,
  • 使用=CELL("address",this_cells_name)并获取"$D$2"作为返回值。

我想做以下事情:

  • 使用=some_function(D2)并获取"this_cells_name"作为返回值。

我该怎么做? VBA解决方案没问题。

2 个答案:

答案 0 :(得分:3)

您也可以使用

Dim var as variant
on error Resume Next
var=Range("D2").Name.Name
on error goto 0
if IsEmpty(var) then msgbox "Cell has no name"

错误捕获是为了处理单元格没有名称的情况

答案 1 :(得分:2)

考虑:

Public Function WhatsInAName(r As Range) As String
    WhatsInAName = ""
    For Each n In ThisWorkbook.Names
        If Range(n).Address(0, 0) = r.Address(0, 0) Then
            WhatsInAName = n.Name
        End If
    Next n
End Function

例如:

enter image description here