【问题标题】:Showing range name next to the range在范围旁边显示范围名称
【发布时间】:2016-06-07 08:53:18
【问题描述】:

在 Excel 2013 中,我在一张参考数据表上使用命名范围来引用另一张表上一堆公式中的常量。

有没有办法在范围本身旁边显示范围名称?例如,如果我的单元格AB23 命名为SC_Item,有没有办法让AC23 显示“SC_Item”,也许是类似于=RANGENAME(AB23)(当然是完全编造的)或类似的东西?

【问题讨论】:

    标签: excel-formula excel-2013 named-ranges


    【解决方案1】:

    除非有内置方法(我还没有使用 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
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-05-21
      • 1970-01-01
      • 2018-08-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-01-08
      • 2012-04-17
      相关资源
      最近更新 更多