加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

489·左右逢源的FILTER

(2024-04-26 20:46:00)
标签:

filter

map

lambda

分类: 公式技巧

旧时的查找函数要不限定了从左至右,如VLOOKUP,

要不就限定了排序,如LOOKUP\MATCH。

使我们写起公式来缩手缩脚,

不少公式技巧都是冲着突破这些限制去的。

因为痛苦,所以变革。

“M365 EXCEL”和“WPS表格”陆续更新了一批新的查找函数。

一口气解决了左右问题,前后问题,通配符问题等等。

FILTER就是个典型。

如果写公式的时候,还抱着旧的思维,很难充分体现FILTER的价值。

比如,上两篇文章都用到了FILTER函数。

但是思维仍然是从左到右的思维。

489·左右逢源的FILTER

原思路是一个一个查看,先查看“军人履历”都有哪些“关键字”。

然后再用COUNTIF去查看A列数据里,有没有这些“关键字”。

这个思路,E标签列,作了FILTER的条件参数。

换个思路,先用看看F列这些“关键字”,有哪些在A列数据里出现过。

489·左右逢源的FILTER

然后,将出现过“关键字”的E列“标签”留下来。

489·左右逢源的FILTER

最后看看留下来的“标签”,有几个不重复值,就知道A列这个数据有过几次“履历”了。

489·左右逢源的FILTER

剩下的问题就是怎么规避零次履历的计数问题。

489·左右逢源的FILTER

这个公式,它的结果不是数组,不能一下子把A列所有数据都计算一遍。

只能向下复制公式,一个一个计算。

那如果我以后想知道整个A列数据里,有三种履历的有多少人。

就有必要一下子,把A列数据都计算出来,形成一个数组。

正好,“M365 EXCEL”和“WPS表格”又又又更新了新函数。

489·左右逢源的FILTER

LAMBDA定义了一个新函数,这个函数没有“函数名”,

但它有计算方式,

它的计算方式就是“SUM(ISTEXT(UNIQUE(FILTER(COUNTIF”那部分。

它也有参数,它的参数就是未知数X。

这个X是谁呢?

MAP函数确定了X是A2:A35里的每一个单元格。

换句话说,MAP和LAMBDA联手,让A2:A35里的每一个单元格都做了一次繁杂的计算。

计算结果不聚合,一个一个保留了下来,形成了一个新的数组。

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有