Grow Notic

  • 🏡
  • Home
  • »
  • PC Tools
  • »
  • Microsoft
  • »
  • EP9. 动态阵列函数

EP9. 动态阵列函数

1.0 动态阵列函数基本概念

这集介绍「动态阵列函数」,是 Excel 2019 之后才有的新功能。传统函数一次只产生一个值,动态阵列函数可以一次产生很多个值并自动填满周边格子。重点学习 FILTERFIND + ISNUMBER 模糊搜寻、连动式下拉选单,以及 HSTACK + SORT 的进阶组合。

  • 📌 周边必须预留空白格子,否则会出现 #SPILL! 错误

# 符号(动态范围参照)
=SUM(A1#)# 表示「引用 A1 这个动态阵列函数产生的整个范围」。

2.0 FILTER 函数(条件筛选)

=FILTER(回传范围, 筛选条件, "找不到时显示的文字")
Example:找出牛仔裤的所有交易记录
=FILTER(整张表格, 产品名称列="牛仔裤", "无此产品")
📌 需要 Excel 2021 / Microsoft 365

3.0 FILTER 模糊搜寻(配合 FIND + ISNUMBER)✅

FILTER 预设需要完全符合才算,输入「裤」找不到「牛仔裤」。

解决方法:
=FILTER(整张表格, ISNUMBER(FIND("裤", 产品名称列)), "")

函数功能
FIND("裤", 产品名称列)找到「裤」回传顺位数字,找不到回传错误
ISNUMBER(...)数字=TRUE,错误=FALSE
FILTER(..., TRUE/FALSE列)只回传 TRUE 的行

=IF(搜寻格="", "", FILTER(整张表格, ISNUMBER(FIND(搜寻格, 产品名称列)), ""))

4.0 连动式下拉选单(FILTER + Data Validation)✅

第二个下拉选单的选项,根据第一个选单自动更新。

  1. 第一层选单:Formulas → Define Name 定义名称范围 → Data Validation → List
  2. 第二层选单=UNIQUE(FILTER(产品名称列, 产品类别列=第一层选单格))
    Data Validation → List → 来源填入 FILTER 公式所在格子,加上 #(例:=H2#
  3. 设定完成后,把辅助栏隐藏(右键 → Hide)

5.0 FILTER 多条件筛选(用乘法)

同时满足两个条件时,把两个条件相乘
=FILTER(整张表格, (产品名称="连帽外套") * (销售金额>=2000), "")
在 Excel 里 TRUE=1,FALSE=0,只有两个条件都是 TRUE(1*1=1),结果才是 1。

6.0 HSTACK 函数(横向拼接栏位)

=HSTACK(范围一, 范围二, 范围三, ...)
把多个不相邻的栏位拼成一张新表格,配合 FILTER 使用,只回传需要的栏位。

配合 SORT 排序:
=SORT(FILTER(HSTACK(A列,C列,F列), 条件), 排序栏位编号, -1)

7.0 动态阵列函数总结

函数功能版本需求
FILTER根据条件筛选资料2021 / M365
UNIQUE移除重复値2021 / M365
SEQUENCE产生连续数列2021 / M365
SORT依指定栏位排序2021 / M365
HSTACK横向拼接多个范围M365
ISNUMBER判断是否为数字所有版本
Table of Content
Sources

1. YouTube:

  • Microsoft Excel 基础教学 (2025)
  • Microsoft Excel 基礎教學 (EP.9) Spilling / Fuzzy Search / HSTACK

2. Google Drive:

  • Microsoft Excel 基础教学:EP.9