分享

知名大公司的Excel面试题:查找最后一个

 5jia5 2020-04-04

有一知名大公司的Excel面试题,要求提取左侧表格中每位客户的最后一次拜访记录:

上图左侧表中姓名是排好序的,这一下降低了题目的难度。所以今天我们就假设这些姓名不连续,然后设置查找公式。

以前兰色也分享过这个题目的公式,用的是Lookup函数。现在已经是2020年,Excel也新增了很多好用的查找函数,所以今天兰色要用更多的公式搞定它。

公式1:Lookup

=LOOKUP(1,0/(A$2:A$101=E3),C$2:C$101)

兰色注:用最经典“1,0/”结构查询返回最后一个值。

公式2:Max函数

{=MAX((A$2:A$101=E3)*C$2:C$101)}

兰色注: 先用A列和E3对比,再* C列的值,让不符合条件的变成0,留言符合条件的日期,最后求最大值。如果你不是office365版本,需要用数组形式输入该公式。(按Ctrl+shift+enter)

公式3:Index+match

{=INDEX(C:C,MATCH(1,0/(A$1:A$101=E3)))}

兰色注:你以为只有Lookup可以“1,0”吗?No! Match也可以。

公式4:Xlookup函数

=XLOOKUP(E3,A:A,C:C,,,-1)

兰色注:当Xlookup第6个参数为-1时,表示从后向前查。

公式5:Filter +Max

=MAX(FILTER(C$2:C101,A$2:A101=E3))

兰色注:Filter函数可以筛选出所有符合条件日期,然后用MAx提取最大值。

兰色说:当其他函数都在用技巧完成最后一次查找时,Xlookup用的只是基本功能。不得不说Xlookup函数太强大了。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多