我在Excel中有一个表,基于我的数据,我在特定行中放置一个“x”,我正在寻找一个公式来返回列标题名称(在我的情况下,它实际上不在row1中,我使用Excel表)。
我现在的公式是:
=INDIRECT(ADDRESS(1,MATCH("x",B2:F2,0)+1,4))
正如你所看到的,我必须在匹配位置上加1,因为匹配是在寻找匹配的相对位置(我的数据在表之前有任意数量的列)。什么是最好的公式,以达到同样的结果,我目前的公式?
mbyulnm01#
一个简单的XLOOKUP()就可以完成这项工作。
XLOOKUP()
=XLOOKUP("x",B2:F2,B$1:F$1)
aurhwmvo2#
如果您的excel版本支持FILTER()函数,那么我建议您使用它。
FILTER()
=FILTER($B$1:$F$1,B2:F2="x")
要使其成为动态溢出阵列,请使用BYROW()。
BYROW()
=BYROW(B2:F7,LAMBDA(rw,FILTER(B1:F1,rw="x")))
2条答案
按热度按时间mbyulnm01#
一个简单的
XLOOKUP()
就可以完成这项工作。aurhwmvo2#
如果您的excel版本支持
FILTER()
函数,那么我建议您使用它。要使其成为动态溢出阵列,请使用
BYROW()
。