【问题标题】:Excel Hates Defined Name for Formula referring to Same Row in Table Format, e.g. [@[TableColumnName]]Excel 讨厌为引用表格格式中同一行的公式定义名称,例如[@[表列名称]]
【发布时间】:2019-02-19 11:12:39
【问题描述】:

当我尝试创建一个定义的名称(公式 > 定义的名称 > 名称管理器 > 等)代表表中的本地或同一行时,例如=[@[TableColumnName]],Excel 不让我说“名称的语法不正确。”

我通过反复试验知道问题是我的引用框而不是定义名称的名称(正如上面引用的错误消息所暗示的那样)。

但是,我需要在定义名称中包含对与当前行相同的表行中的字段的引用,以缩短我的公式。最好的方法是什么?有其他的符号吗?

为什么? 我正在尝试将我的 Excel 数组公式缩短为

【问题讨论】:

    标签: excel formula named-ranges listobject excel-tables


    【解决方案1】:

    我认为您不能对这样的定义名称公式使用结构化引用。

    试试:

    =INDEX(Table1[#All],ROW(),1)
    

    列索引1[TableColumnName] 是同一列。如果该列位置可能是可变的,则使用:

     =INDEX(Table1[#All],ROW(),MATCH("TableColumnName",Table1[#Headers],0))
    

    并且,如果表可能从第 1 行以外的位置开始(这可能是最适合不同类型的数据配置):

    =INDEX(Table1[#All],ROW()-ROW(Table1[#Headers])+1,MATCH("TableColumnName",Table1[#Headers],0))
    

    【讨论】:

    • 这正是它所需要的。当超过 255 个字符时,我最终对一些长公式使用了定义的命名或命名范围,并为其他公式使用了字符串替换方法。
    猜你喜欢
    • 2014-12-06
    • 1970-01-01
    • 2019-05-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多