如何让=INDEX(MATCH)函数避免重复函数查找显示错误

首先呢INDEX函数+MATCH函数嵌套的最基本格式如下:

根据“值”在序列2中的位置,得出序列1中相同位置的值(模糊查找时最后参数也可能是1、-1)。

这个看似和vlookup函数很像但它不需要源数据的严格对齐,也不需要查找值必须在首列更为灵活一些~

这样的反向查找,其实用VLOOKUP、LOOKUP、INDEX+MATCH都是可以做到的3个公式分别如下:

这个基夲实例中,序列1就是B2:B9序列2是C2:C9,查找值是E3以上,可见3者异同

除了以上的基本情景,INDEX+MATCH嵌套也可能会用在其他的怪异需求中

要将B列内容各自重复函数C列指定的次数,形成一个新的序列
首先,我们想到用INDEX来提取B列内容:

只是这个X应该是什么呢?

它得是一个在下拉的时候,湔6个取值是1然后2个2,然后5个3然后3个4,这样的序列

我们自然想到,先将频次序列{6,2,5,3}变成累计序列{6,8,13,16}然后从0开始对它进行模糊查找,如下:

这时得到了这样一个序列:

这个序列,离我们想要的序列还有两点不同:1都变成了错误值后面的取值也都少了1;据此可以在后面+1,前媔增加IFERROR:

此时成功获得了想要的序列X,那么将它替换回原公式即:

最后,还有一个问题即公式中的累计序列如何计算得到?

这可以用offset選定区域并求和获得:

即将C14分别向下1、2、3、4格的区域求和。

用以上公式替代掉{6,8,13,16}则最终的公式为:

以上是数组公式,需三键结束下拉。

我要回帖

更多关于 重复函数 的文章

 

随机推荐