0

0

excel多张表快速合并到一个表 多表合并实用方法

倫敦的微風

倫敦的微風

发布时间:2026-01-11 20:45:42

|

100人浏览过

|

来源于php中文网

原创

推荐使用Power Query合并多个工作表:点击【数据】→【从工作簿】导入当前文件,全选需合并的工作表,进入编辑器后追加查询,最后关闭并上载至新工作表。

☞☞☞☞点击夸克ai手把手教你,操作像呼吸一样简单!☜☜☜☜☜excel多张表快速合并到一个表 多表合并实用方法 - php中文网

如果您需要将Excel中多个工作表的数据整合到一个工作表中,但手动复制粘贴效率低下且易出错,则可以采用以下几种高效、可复用的操作方法。以下是解决此问题的步骤:

一、使用Power Query合并多个工作表

Power Query是Excel内置的数据获取与转换工具,适用于结构相似的多张表(如列名一致、数据格式统一),能自动识别并追加所有工作表内容,支持刷新更新。

1、在Excel中点击【数据】选项卡,选择【从工作簿】,浏览并选中当前Excel文件,点击【导入】。

2、在导航器窗口中,勾选【选择多个项目】,然后全选所有需合并的工作表名称,点击【加载】或【转换数据】。

3、进入Power Query编辑器后,选中左侧所有查询项,右键选择【追加查询】→【将查询追加为新查询】。

4、在新生成的合并查询中,点击【关闭并上载】,结果将自动写入新工作表。

二、使用SUMPRODUCT+INDIRECT函数组合实现动态跨表汇总

该方法适用于固定表名、列结构一致且表数量不多的场景,无需加载外部工具,通过公式实时引用各表指定单元格区域并汇总,适合轻量级汇总需求。

1、在目标表首行输入标题,例如A1输入“姓名”,B1输入“销售额”。

2、在A2单元格输入如下公式(假设工作表名为Sheet1、Sheet2、Sheet3,数据位于A2:B100):

=IFERROR(INDEX(INDIRECT("Sheet"&INT((ROW(A1)-1)/100)+1&"!A:A"),MOD(ROW(A1)-1,100)+2),"")

3、在B2单元格输入对应数值列公式:

=IFERROR(INDEX(INDIRECT("Sheet"&INT((ROW(A1)-1)/100)+1&"!B:B"),MOD(ROW(A1)-1,100)+2),"")

4、向下填充公式,直至所有数据行覆盖完毕,空白行将自动显示为空。

三、利用VBA宏一键合并同结构工作表

VBA脚本可批量读取当前工作簿内所有工作表(排除目标汇总表),按顺序将数据追加至指定汇总表,支持跳过标题行,执行速度快,适合重复性高频操作。

1、按Alt + F11打开VBA编辑器,点击【插入】→【模块】。

2、粘贴以下代码(假设汇总表名为“汇总”,且各源表首行为标题,数据从第2行开始):

Sub 合并多表()
Dim ws As Worksheet, destWs As Worksheet, lastRow As Long
Set destWs = ThisWorkbook.Sheets("汇总")
lastRow = destWs.Cells(destWs.Rows.Count, "A").End(xlUp).Row
For Each ws In ThisWorkbook.Sheets
If ws.Name "汇总" Then
ws.UsedRange.Offset(1, 0).Copy destWs.Cells(lastRow + 1, 1)
lastRow = destWs.Cells(destWs.Rows.Count, "A").End(xlUp).Row
End If
Next ws
End Sub

3、返回Excel界面,按Alt + F8调出宏列表,选中“合并多表”,点击【运行】。

四、借助Excel 365/2021新增的TOCOL函数横向压缩多表数据

TOCOL函数可将多个二维区域垂直堆叠为单列,配合BYROW、CHOOSE等函数可扩展为多列结构,适用于Excel 365及2021以上版本,无需辅助列与查询界面。

1、确保所有待合并表结构完全一致(相同列数、列序、列标题),并命名区域(如Sheet1!A1:C100命名为tbl1,Sheet2!A1:C100命名为tbl2)。

2、在汇总表A1单元格输入:=LET(a,TOCOL(CHOOSE({1,2},tbl1,tbl2),1),INDEX(a,SEQUENCE(ROWS(a)),{1,2,3}))

3、公式将自动输出三列完整数据,若需包含表来源标识,可在CHOOSE中嵌入常量数组添加来源列。

相关专题

更多
java基础知识汇总
java基础知识汇总

java基础知识有Java的历史和特点、Java的开发环境、Java的基本数据类型、变量和常量、运算符和表达式、控制语句、数组和字符串等等知识点。想要知道更多关于java基础知识的朋友,请阅读本专题下面的的有关文章,欢迎大家来php中文网学习。

1463

2023.10.24

counta和count的区别
counta和count的区别

Count函数用于计算指定范围内数字的个数,而CountA函数用于计算指定范围内非空单元格的个数。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

196

2023.11.20

string转int
string转int

在编程中,我们经常会遇到需要将字符串(str)转换为整数(int)的情况。这可能是因为我们需要对字符串进行数值计算,或者需要将用户输入的字符串转换为整数进行处理。php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

315

2023.08.02

int占多少字节
int占多少字节

int占4个字节,意味着一个int变量可以存储范围在-2,147,483,648到2,147,483,647之间的整数值,在某些情况下也可能是2个字节或8个字节,int是一种常用的数据类型,用于表示整数,需要根据具体情况选择合适的数据类型,以确保程序的正确性和性能。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

534

2024.08.29

c++怎么把double转成int
c++怎么把double转成int

本专题整合了 c++ double相关教程,阅读专题下面的文章了解更多详细内容。

51

2025.08.29

C++中int的含义
C++中int的含义

本专题整合了C++中int相关内容,阅读专题下面的文章了解更多详细内容。

194

2025.08.29

堆和栈的区别
堆和栈的区别

堆和栈的区别:1、内存分配方式不同;2、大小不同;3、数据访问方式不同;4、数据的生命周期。本专题为大家提供堆和栈的区别的相关的文章、下载、课程内容,供大家免费下载体验。

386

2023.07.18

堆和栈区别
堆和栈区别

堆(Heap)和栈(Stack)是计算机中两种常见的内存分配机制。它们在内存管理的方式、分配方式以及使用场景上有很大的区别。本文将详细介绍堆和栈的特点、区别以及各自的使用场景。php中文网给大家带来了相关的教程以及文章欢迎大家前来学习阅读。

569

2023.08.10

c++主流开发框架汇总
c++主流开发框架汇总

本专题整合了c++开发框架推荐,阅读专题下面的文章了解更多详细内容。

80

2026.01.09

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Excel 教程
Excel 教程

共162课时 | 11.4万人学习

成为PHP架构师-自制PHP框架
成为PHP架构师-自制PHP框架

共28课时 | 2.4万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号