这集介绍「动态阵列函数」,是 Excel 2019 之后才有的新功能。传统函数一次只产生一个值,动态阵列函数可以一次产生很多个值并自动填满周边格子。重点学习 FILTER、FIND + ISNUMBER 模糊搜寻、连动式下拉选单,以及 HSTACK + SORT 的进阶组合。
#SPILL! 错误# 符号(动态范围参照)=SUM(A1#) — # 表示「引用 A1 这个动态阵列函数产生的整个范围」。
=FILTER(回传范围, 筛选条件, "找不到时显示的文字")
Example:找出牛仔裤的所有交易记录=FILTER(整张表格, 产品名称列="牛仔裤", "无此产品")
📌 需要 Excel 2021 / Microsoft 365
FILTER 预设需要完全符合才算,输入「裤」找不到「牛仔裤」。
解决方法:=FILTER(整张表格, ISNUMBER(FIND("裤", 产品名称列)), "")
| 函数 | 功能 |
|---|---|
FIND("裤", 产品名称列) | 找到「裤」回传顺位数字,找不到回传错误 |
ISNUMBER(...) | 数字=TRUE,错误=FALSE |
FILTER(..., TRUE/FALSE列) | 只回传 TRUE 的行 |
=IF(搜寻格="", "", FILTER(整张表格, ISNUMBER(FIND(搜寻格, 产品名称列)), ""))
第二个下拉选单的选项,根据第一个选单自动更新。
=UNIQUE(FILTER(产品名称列, 产品类别列=第一层选单格))#(例:=H2#)同时满足两个条件时,把两个条件相乘:=FILTER(整张表格, (产品名称="连帽外套") * (销售金额>=2000), "")
在 Excel 里 TRUE=1,FALSE=0,只有两个条件都是 TRUE(1*1=1),结果才是 1。
=HSTACK(范围一, 范围二, 范围三, ...)
把多个不相邻的栏位拼成一张新表格,配合 FILTER 使用,只回传需要的栏位。
配合 SORT 排序:=SORT(FILTER(HSTACK(A列,C列,F列), 条件), 排序栏位编号, -1)
| 函数 | 功能 | 版本需求 |
|---|---|---|
FILTER | 根据条件筛选资料 | 2021 / M365 |
UNIQUE | 移除重复値 | 2021 / M365 |
SEQUENCE | 产生连续数列 | 2021 / M365 |
SORT | 依指定栏位排序 | 2021 / M365 |
HSTACK | 横向拼接多个范围 | M365 |
ISNUMBER | 判断是否为数字 | 所有版本 |
1. YouTube:
2. Google Drive: