Excel:如何用这种公式使用INDIRECT:{= MATCH(2,1 /(A1:A10 =“something”))}
我正在寻找一个特定问题的答案。 我在这里find了一个很好的答案,解决scheme是公式:{= MATCH(2,1 /(A1:A10 =“something”))}
我的问题是:我怎样才能使用这个公式与间接函数? 我需要使用INDIRECT(“A”&ROW() – 8&“:A”&ROW())来replace范围A1:A10。我还确保对=“something”部分使用双引号。 我尝试了几个小时没有成功。
您的帮助将不胜感激。
问候。
不要使用INDIRECT(),因为它是一个易失性函数,而是使用INDEX():
=MATCH(2,1/(INDEX(A:A,ROW()-8):INDEX(A:A,ROW())=8))
这是一个数组公式,在退出编辑模式而不是Enter时,必须使用Ctrl-Shift-Enter确认。 如果正确完成,Excel将自动在公式的周围放置{}
。
也只是为了确保我们都了解这个公式正在做什么。 Match将返回最后8
个元素的9个单元格范围内的相对位置。
所以如果范围有:
1 8 2 8 3 8 5 6 7
它将返回6
,因为这是8
的最后一个位置。 无论比赛的实际行如何,它将返回6
。 该值是相对于不是表单的范围。
每当Excel Re计算即使所引用的数据发生变化时,易失性函数也会重新计算。 相比之下,非易失性函数仅在其所引用的数据发生改变时才重新计算,从而将计算次数保持为最小。
现在你改变了你的问题,使我的答案错了。 这里是"something"
=MATCH(2,1/(INDEX(A:A,ROW()-8):INDEX(A:A,ROW())="something"))