微软在Office 365引入了一个非常强大的函数,FILTER函数,从名称可以理解,该函数可以实现数据过滤功能,过去不能通过VLOOKUP,MATCH等函数完成的数据多匹配功能,今后就可以通过这个函数实现了。不过可惜的是这个函数只有365用户,或者Excel2019部分版本有这个函数。如果想体验这个函数,可以使用EFunction之中的ETFilter函数作为替代函数使用。
FILTER主要用来对数据进行过滤,也可以理解为对数据进行匹配。它可以实现VLOOKUP数据精确匹配全部功能,而且FILTER函数数据匹配是全匹配,意思就是有多少条记录,它就匹配出来多少条记录。
数据过滤FILTER函数,这个功能很类似Excel之中数据的过滤器功能。
图1 Excel 过滤器工具筛选Delaware州所有的投票数据
图2 为使用FILTER函数筛选出来的结果(本机未安装最新版本Excel,暂且用ETFilter函数代替)和使用过滤器筛选出来的结果完全一样。
=ETFilters(governors_county!A2:E1026,governors_county!A2:A1026=governors_county!A2,"没有匹配上结果")
图2 ETFilter函数筛选出来的结果
多数据匹配如果要模拟实现VLOOKUP函数的数据匹配功能,只要更改第一个参数就可以了,数据范围不选整个表格,只选择要提取的数据列,例如要提取Delaware州有多少个county。
=ETFilters(governors_county!B2:B1026,governors_county!A2:A1026=governors_county!A2,"没有匹配上结果") ,(替代函数要使用数组公式组合键,如果是原生函数就不用了)
图3 提取Delaware州三个县郡
注意事项FILTER函数使用过程之中,需要注意几点:
- 微软FILTER函数默认是支持动态数组公式的,如果有多条记录,函数会将结果全部返回
- 函数第一个参数和第二个参数,在纵向维度上必须保持相同,即行数必须相同
- EFunction之中ETFilter函数默认是不支持动态数组的,公式之中之中必须按CTRL shift enter组合键,而且如果要模拟动态数组效果,需要配合ETResize函数。
微软除了推出了FIlter函数之外,还推出了其他几个重要的函数例如SORTBY函数,UNIQUE函数等,同时推出了一个重要的概念,那就是动态数组。不过这些函数,前提是要保证你的Exce支持l这些函数(EFunction之中部分实现了这些函数的功能,如果Excel是较低版本的可以暂时用这个替代一下)
Excel动态数组建议教程
Excel 动态数组函数列表
以上为我收集比较齐全的关于动态数组学习资料,总之是比较系统的介绍了365之中几个新引入的动态数组函数的使用技巧及注意事项,如果想学习的话,可以转发留言获取本资料。不过前提条件是,你的英文需要足够的好,至少能够读懂简单英文资料。
不过也不必担心,后续也会撰文或者录制视频,系统介绍这些函数的使用方法和技巧,可以添加关注,以免错过。
,