index+large+if+row从下往上查找一对多条件匹配

2022年4月28日 30点热度 0人点赞

    对于一些excle高手而言,常用的几个公式已经不能满自身的需求了,对于惯用index+smalll+if+row的人而言更是需要革故鼎新。

    通常我们会用index+small+if+row函数来根据一个查找条件进行配匹,并返回多个数值,这个函数一般是按行号从上往下开始查找并匹配。但是如果偶尔有要求需要它从最后一行开始往上查找并返回相应的数值的话,需要用index+large+if+row函数来实现。

工具/原料

  • 电脑、excel

描述

  1. 1

    如下图:A列为部门,B列为名字。F、G为要求值的列。

    在F列用index+small+if+row得出了管理部的所有人的名字,它是按从上往下的顺序来返回数值的;

    在G列的则相反,它是从下往上的顺序返回了管理部所有人的名字,

    END

方法/步骤

  1. 1

    为了作个对比,先用index+small+if+row求个值。

    在F2键入公式:=INDEX(B:B,SMALL(IF(A:A=$E$2,ROW(A:A),4^8),ROW(1:1)))&""

    注意在这里“$E$2”单元格用了绝对引用,数组公式尾未加了“&""”去0值。

  2. 2

    按三键alt+ctrl+enter结束,然后公式下拉,如下图:

  3. 3

    双击F2单元,全选公式,把它复制到G2单元格,现在要对原来的公式进行修改。直接把原公式里的SMALL替换成“LARGE"。

  4. 4

    但是仅是简单地把SMALL替换成“LARGE",这样公式还是不能用的,返回的值会显示是空白的。

    所以还要把原公式中的“4^8”替换掉,改成双引号“""”,注意这里双引号要用英文模式键入。

  5. 5

    最后公式为:=INDEX(B:B,LARGE(IF(A:A=$E$2,ROW(A:A),""),ROW(1:1)))&""

    然后再按三键alt+ctrl+enter,公式下拉

    如下图:最后要返回的值的顺序就刚好就倒过来了。

    END

注意事项

  • 单元格引用注意区分绝对引用与相对引用
  • 公式中双引号""键入注意要用英文模式
经验内容仅供参考,如果您需解决具体问题(尤其法律、医学等领域),建议您详细咨询相关领域专业人士。

展开阅读全部

laozhao

这个人很懒,什么都没留下

文章评论