Σ表格公式学堂EXCEL FORMULA & SCENARIO
组合数据拆分合并 · 4 个 Sheet

一张总表按部门拆成多个 Sheet

总表按部门自动拆成销售部、技术部各自的表。

1

场景背景

HR 有一张全公司员工总表,各部门主管只要看自己部门的人。传统做法是手动筛选 → 复制 → 新建 Sheet → 粘贴,部门一多就崩溃。用 FILTER 可以让每个分表自动跟着总表更新。

2

数据结构

共 2 个 Sheet
Sheet:总表
字段含义示例值
工号 / 姓名人员信息E01 / 张三
部门拆分依据销售部
月薪数据列8000
Sheet:销售部 / 技术部 / 市场部
字段含义示例值
整表内容FILTER 按部门筛出来的明细=FILTER(总表!A2:D9,总表!C2:C9="销售部")
3

解决步骤

1
第 1 步:先列出所有部门
用 UNIQUE 从总表部门列取出不重复的部门名,作为分表的清单。
=UNIQUE(总表!C2:C9)
2
第 2 步:新建分表,写 FILTER
在「销售部」表 A2 输入 FILTER,条件写 部门="销售部",整行明细自动溢出。
=FILTER(总表!A2:D9,总表!C2:C9="销售部","无记录")
3
第 3 步:每个分表只改条件
技术部、市场部同样公式,只把 "销售部" 换成对应部门。也可以引用单元格,改一格全表变。
=FILTER(总表!A2:D9,总表!C2:C9=A1,"无记录")
4
第 4 步:老版本用高级筛选或 Power Query
没有 FILTER 的版本:数据 → 筛选 → 按部门筛 → 复制到新表;或用 Power Query 按部门拆分到多个工作表。
4

完整公式与逐段拆解

=FILTER(总表!A2:D9,总表!C2:C9="销售部","无记录")
总表!A2:D9要筛选的整片数据(含所有列)
总表!C2:C9="销售部"条件:部门列等于销售部,返回 TRUE/FALSE 数组
"无记录"一条都没有时显示这个,避免 #CALC!
5

多 Sheet 示例

在编辑器中打开 ↗
ABCD
1工号姓名部门月薪
2E01张三销售部8000
3E03王五销售部7600
4E05孙七销售部8200
5
6
7
8
9
当前表:销售部 · 公式单元格 A2 · 绿色底为公式,蓝色底为动态数组溢出结果

销售部表只保留本部门 3 个人,总表一改,分表自动更新

6

数据流向

数据流向演示1 / 4
来源总表!A2:D9
➜
去向FILTER 条件
总表全部明细
来源总表!C2:C9
→
去向TRUE/FALSE
判断部门列
来源TRUE/FALSE
→
去向筛选结果
保留为 TRUE 的整行
来源筛选结果
→
去向销售部!A2
溢出到分表
跟着高亮一步步看数据怎么流动
7

注意事项与坑

!FILTER 的溢出区域下方不能有内容,否则 #SPILL!。
!分表里不要再手写数据,会被溢出结果挡住。
!总表增加行时,FILTER 的区域要同步扩大,或用整列引用(性能会差一点)。
8

相关场景