Excel合并多个表格数据的公式设置方法
时间:2026-07-11 | 作者:318050 | 阅读:0把Excel里好几张表的数据合并到一块,其实动态数组公式就能搞定。
只要这几张表结构完全一致,VSTACK可以把它们按行纵向拼接起来。
举个实际例子,用VSTACK合并华东表和华南表,再搭配FILTER删掉预留区域里的空行。
适用场景:每月销售明细、门店流水、人员清单这类“表头统一、后续行数会持续新增”的数据。
当前操作软件:Microsoft Excel
软件版本:Microsoft 365,Excel 16.93
第一步:统一列顺序
先把所有待合并的表调整成完全一致的列顺序。
示例里左边放华东销售明细,右边放华南销售明细,两张表都按“日期、区域、商品、数量、金额”排列。
注意:这一步看上去简单,但容易翻车。表头对不齐,公式不会自动帮你匹配对应列,必须提前处理好。
第二步:手动输入汇总表头
找页面右侧的空白区域,手动输入汇总表的表头。
示例里把汇总区设在 M1:Q1 单元格,表头同样写成“日期、区域、商品、数量、金额”。
这样做的好处是:公式只会自动返回数据行,表头完全由你自己控制。
后续做筛选、排序或套用表格格式时,逻辑更清晰。
第三步:基础公式写法
点选汇总表的第一个数据单元格 M2,输入 =VSTACK(A2:E4,G2:K4)。
A2:E4 是华东表的数据行范围,G2:K4 是华南表的数据行范围。
VSTACK 会按照你写的先后顺序,把两个区域的内容上下拼接起来。
第四步:动态扩展引用范围
如果后续源表还会继续新增记录,就别只引用当前已经填了内容的3行。
把引用范围预留得大一点,再用 FILTER 把多余的空行筛掉即可。
示例公式:=FILTER(VSTACK(A2:E20,G2:K20),CHOOSECOLS(VSTACK(A2:E20,G2:K20),1)<>"")
逻辑很简单:先合并 A2:E20 和 G2:K20 两个大区域,再只保留第一列“日期”不为空的行。
效果:日后新增数据,公式会自动带进来。
第五步:核对汇总结果
公式算出结果后,必须做的一件事就是核对:汇总区的总行数、总金额是不是和预期一致。
示例里华东有3行数据、华南有3行数据,合并完汇总区应该得到6行。
要是行数对不上,一般原因有两个:
- 你选的源区域没把新增内容包进去
- 筛选条件误把有效行排除了
公式语法拆开看
VSTACK 的语法是 =VSTACK(array1,[array2],...),作用是把多个数组或单元格区域按行向下追加拼接。
FILTER 的语法是 =FILTER(array,include,[if_empty]),用来按条件保留符合要求的行。
示例中 CHOOSECOLS(VSTACK(...),1) 提取出合并结果的第 1 列,配合 <>"" 判断这一列的内容不是空白。
| 参数 | 在示例中的写法 | 作用 |
|---|---|---|
array1 | A2:E20 | 第一张表的数据区域,不包含表头。 |
array2 | G2:K20 | 第二张表的数据区域,列数要和第一张表一致。 |
array | VSTACK(A2:E20,G2:K20) | 准备筛选的合并结果。 |
include | CHOOSECOLS(...,1)<>"" | 只保留第一列不为空的记录。 |
if_empty | 可省略,也可写成 "暂无数据" | 没有匹配记录时返回的提示。 |
版本兼容和常见错误
这组函数虽然方便,但有一个硬门槛——VSTACK、FILTER、CHOOSECOLS 都是近年新出的动态数组函数,只能在 Microsoft 365 版 Excel 中正常运行。
如果使用 WPS 或旧版 Excel,需要先确认是否支持。旧版 Excel 用不了的话,可以改用 Power Query 的“追加查询”功能,或者手动复制粘贴搭配表格引用来维护汇总表。
遇到没反应的情况怎么办?
- #SPILL! 报错:通常是汇总区域下方有其他内容,挡住了动态数组的溢出结果。——清空 M2:Q20 这类目标区域后再重试。
- #VALUE! 报错:重点检查所有待合并区域的列数是否一致,比如 A2:E20 是 5 列,第二张表也必须是 5 列。
- #NAME 报错:多半是软件版本不识别函数名,先核对 Excel 版本,再考虑用 Power Query 替代方案。
扩展示例
这个公式方案还能继续扩展:
- 合并三张表:直接把第三张表的区域写到 VSTACK 参数后面即可,例如
=VSTACK(A2:E20,G2:K20,A25:E40)。 - 只保留金额大于300的记录:把筛选条件改成对应第5列(金额列)大于300:
=FILTER(VSTACK(A2:E20,G2:K20),CHOOSECOLS(VSTACK(A2:E20,G2:K20),5)>300)。 - 没有数据时显示提示:补全 FILTER 的第三个参数:
=FILTER(VSTACK(A2:E20,G2:K20),CHOOSECOLS(VSTACK(A2:E20,G2:K20),1)<>"","暂无数据")。
来源:整理自互联网
免责声明:文中图文均来自网络,如有侵权请联系删除,心愿游戏发布此文仅为传递信息,不代表心愿游戏认同其观点或证实其描述。
相关文章
更多-
- Excel2019中如何输入以0开头的数字01的完整详细教程
- 时间:2026-07-25
-
- Excel单元格内换行快捷键及图文操作步骤
- 时间:2026-07-25
-
- Excel多表汇总合并求和快速方法
- 时间:2026-07-25
-
- Excel多个表格合并与数据排序方法
- 时间:2026-07-25
-
- Excel筛选符合条件数据及快速填充数字步骤
- 时间:2026-07-25
-
- Excel合并单元格保留所有内容与按条件合并数据图文步骤
- 时间:2026-07-25
-
- Excel表格内容显示不全调整及固定表头图文教程
- 时间:2026-07-25
-
- Excel绝对引用与相对引用区别及输入图文步骤
- 时间:2026-07-25
精选合集
更多大家都在玩
热门话题
大家都在看
更多-
- iOS 13.5.1电池续航差是电池耗电问题吗
- 时间:2026-07-25
-
- 苹果教育优惠开启 附购买攻略
- 时间:2026-07-25
-
- 苹果iOS 14 beta 2 测试版主要更新内容:除细节变化外修复多项Bug
- 时间:2026-07-25
-
- iOS 14 beta 2 是否解决内存占用过多问题?
- 时间:2026-07-25
-
- 受欢迎的奥特曼游戏有哪些
- 时间:2026-07-25
-
- iOS 14信息应用5大更新变化
- 时间:2026-07-25
-
- iOS 14正式版上线时间公布 官方全新介绍
- 时间:2026-07-25
-
- 最新苹果iOS 14 Beta 2版本更新内容全解析与升级教程
- 时间:2026-07-25