有时我们会碰到这样的问题,提取符合条件的结果是多个而不是一个,这时候VLOOKUP就犯难了今天和小伙伴分享下如何提取符合条件的多个结果。INDEX、SMALL、IF,ROW等函数的组合应用
-
如下图,左侧A1:C10是一份学员名单表现在需要根据F1单元格的“一班”这个指定的条件,在F2:F10单元格区域中提取该班级全部学员名单。
-
F2单元格输入以下数组公式按住Ctrl+Shift键不放,再按回车键然后向下填充:
这部分,先判断A1:A10的值是否等于F1如果相等,则返回A列班级相对应的行号否则返回4^8,也就是65536一般情况下,工作表到这个位置就没有数据了
SMALL函数对IF函数的结果进行取数,随着公式的向下填充依次提取第1、2、3……n个最小值,由此依次得到符合班级条件的行号
随后使用INDEX函数,以SMALL函数返回的行号作为索引值在B列中提取出对应的姓名结果。
当SMALL函数所得到的结果为65536时意味着符合条件的行号已经被取之殆尽了,此时INDEX函数也随之返回B65536单元格的引用结果是一个无意义的0
-
为了避免结果是一个无意义的0,可以在公式后面加上一个小尾巴 &""
利用&””的方法很巧妙的规避了无意义0值的出现,
经验内容仅供参考如果您需解決具体问题(尤其法律、医学等领域),建议您详细咨询相关领域专业人士