如何通过公式创建%age列,匹配Subject列值返回对应行数据?
解决Excel动态匹配列取值的问题
你可以用INDEX+MATCH组合公式实现需求,这个组合比HLOOKUP更灵活,能准确匹配当前行的对应列值:
假设科目列名在E1:H1,数据行从第2行开始(对应结构化引用的当前行),在%age列的单元格中输入:
=INDEX(E:H,ROW(),MATCH([@Subject],E1:H1,0))
如果你使用支持XLOOKUP的Excel版本(Office 365/2021及以上),可以用更简洁的公式:
=XLOOKUP([@Subject],E1:H1,E:H)
原HLOOKUP公式失效原因
你之前的公式=HLOOKUP([@Subject], E:H,2,0)中,第三参数固定写了2,这意味着它只会取E:H区域的第2行数据,不会自动匹配当前行的位置,拖动公式时结果无法随行列动态变化,因此不符合预期。
内容的提问来源于stack exchange,提问作者user3094480
相关产品推荐
相关产品推荐

