乐于分享
好东西不私藏

Excel 一对多查找公式这么短,谁还怵公式?

Excel 一对多查找公式这么短,谁还怵公式?

公众号平台最新的推送规则对技术类文章不太友善,如果不想错过干货,请务必“设为星标”哦!!!

点击任意文章上方的“☆星标”即可。

经常使用 Excel 的同学呢,我还是建议大家有条件的话尽量升级到 365,因为 365 不仅有很多降维打击的函数,还有了动态数组的概念,从此告别三键,告别冗长难以理解的万金油公式。

简言之,将工作极大简化了。以常见的一对多查找为例。

案例:

根据下图 1 中 D 列的菜品,从左侧的数据表中查找出所有对应的姓名。

效果如下图 2 所示。

解决方案:

1. 在 E2 单元格中输入以下公式 --> 回车:

=FILTER(A2:A21,(B2:B21=D2))

公式释义:

  • FILTER 函数的作用是按条件筛选;

  • 语法为 FILTER(要筛选的数值,筛选条件,[空值时显示的内容]);

  • 上述公式表示从 A2:A21 区域中筛选出符合条件 B2:B21=D2 的行

不拘泥于上述公式,365 中有好多函数都能一招拿下,比如下面这种。

2. 输入以下公式 --> 回车:

=TOCOL(IF(B2:B21=D2,A2:A21,NA()),3)

公式释义:

  • IF(B2:B21=D2,A2:A21,NA()):如果 B2:B21 区域中的值与 D2 相同,则返回 A 列对应的值,否则返回错误值;

  • TOCOL(...,3):

    • TOCOL 函数的作用是将数值变成一列;

    • 第二个参数 3 表示忽略空白和错误值;第二个参数列表如下:

    • 0:保留所有值(默认);

    • 1:忽略空白;

    • 2:忽略错误;

    • 3:忽略空白和错误

    • 公式表的意思是将 if 函数的结果忽略错误值后转换成一列

转发、点赞、在看也是爱!