Power Query可高效合并多个结构一致的Excel文件:需将文件置于同一文件夹并确保列名、顺序、数据类型统一;通过“从文件夹”导入,筛选.xlsx/.xls文件,用Excel.Workbook函数提取指定工作表数据,最后清理冗余列并自动识别数据类型后加载。

如果您需要将多个Excel文件中的数据汇总到一个工作表中,Power Query提供了一种高效且可重复使用的整合方式。以下是使用Power Query完成多Excel文件合并的具体操作步骤:
一、准备文件结构
Power Query要求所有待合并的Excel文件必须存放在同一文件夹中,且各文件结构(列名、列顺序、数据类型)应保持一致,否则可能导致合并后数据错位或错误。建议提前关闭所有待合并的Excel文件,并确保文件扩展名为.xlsx或.xls。
1、新建一个空文件夹,将所有需合并的Excel文件复制到该文件夹中。
2、确认每个Excel文件中目标数据均位于同一工作表(例如“Sheet1”),且首行为列标题。
3、检查各文件第一行是否均为字段名,且无空行、合并单元格或前导空格。
二、从文件夹导入数据
Power Query通过“从文件夹”源一次性读取整个目录下的所有Excel文件,自动识别并列出文件元数据,为后续提取内容奠定基础。
1、在Excel中,点击【数据】选项卡,选择【获取数据】→【从文件】→【从文件夹】。
2、在弹出窗口中,浏览并选中存放Excel文件的文件夹,点击【确定】。
3、Power Query编辑器中会显示文件列表,包括Name、Extension、Date accessed等列;此时不要点击“转换数据”,直接进入下一步。
三、筛选Excel文件并展开内容
文件夹中可能混有非Excel文件(如临时备份、文档等),需通过扩展名过滤,再对每个Excel文件执行内容提取,确保只处理.xlsx或.xls文件。
1、点击“Extension”列右上角的下拉箭头,仅勾选.xlsx 和 .xls,取消其他扩展名选项。
2、找到“Content”列,点击其右侧的展开按钮(双箭头图标),在弹出菜单中取消勾选“全部”,仅勾选“Use original column name as prefix”不勾选,“Transform File”不启用,然后点击【确定】。
3、若出现“Transform Sample File”提示,点击【编辑】,在新查询中删除默认添加的Transform步骤,直接关闭并应用,返回主查询。
四、提取每张工作表的数据
每个Excel文件可能含多个工作表,需指定统一提取某一张表(如“Sheet1”)的数据,避免因工作表名称不一致导致错误。Power Query通过自定义列调用Excel.Workbook函数实现精准提取。
1、在Power Query编辑器中,点击【转换】→【格式】→【数据类型】,将“Content”列设为【二进制】类型(如未自动识别)。
2、点击【转换】→【生成列】→【使用示例】,输入示例值:=Excel.Workbook([Content], true){[Item="Sheet1",Kind="Sheet"]}[Data],按回车确认。
3、新列生成后,点击其右侧展开按钮,仅勾选“使用第一行作为标题”,取消其他选项,点击【确定】。
五、清理与合并结果
提取后的数据可能存在多余列(如“Source.Name”)、空行或类型错误,需统一删除冗余列、提升数据类型,并将所有行堆叠为单表。
1、选中除数据列外的所有辅助列(如“Name”“Extension”“Date modified”“Content”“Source.Name”),右键选择【删除列】。
2、点击【转换】→【检测数据类型】,让Power Query自动识别并设置各列正确数据类型。
3、点击【主页】→【关闭并上载】→【关闭并上载至】,在弹出窗口中选择“现有工作表”并指定放置位置(如A1),点击【加载】。










