Excel如何提取多表指定列合并为汇总表 优先用内置表格连接功能(Mac)
Mac端Excel多表提取指定列合并操作步骤
方案1:自带Power Query功能(推荐,支持自动刷新)
- 第一步:将所有原始表转为结构化表
选中任意原始表的单元格,按Cmd+T,勾选「表包含标题」后确认,在「表格设计」选项卡中将表名修改为和实际内容对应(如FRUITS、PETS),所有待合并表都按此操作。 - 第二步:打开Power Query编辑器
点击顶部「数据」选项卡,选择「获取数据(Power Query)」>「启动Power Query编辑器」。 - 第三步:输入合并查询代码
点击编辑器左上角「高级编辑器」,删除原有默认代码,粘贴以下代码后点击「完成」:let // 按格式添加所有待合并的表名和对应来源标识即可扩展 源 = Table.FromRecords({ [TableName = "FRUITS", SourceName = "fruits"], [TableName = "PETS", SourceName = "pets"] }), 批量处理表 = Table.AddColumn(源, "表数据", each let 加载表 = Excel.CurrentWorkbook(){[Name=[TableName]]}[Content], 提取指定列 = Table.SelectColumns(加载表, {"name"}), 新增来源列 = Table.AddColumn(提取指定列, "source", each [SourceName]) in 新增来源列), 合并所有数据 = Table.ExpandTableColumn(批量处理表, "表数据", {"name", "source"}, {"name", "source"}), 清理多余列 = Table.RemoveColumns(合并所有数据, {"TableName", "SourceName"}) in 清理 - 第四步:导出汇总数据
点击编辑器左上角「关闭并上载」,汇总表会自动生成在新工作表中。后续原始表数据更新时,右键汇总表任意单元格选择「刷新」即可同步最新内容。
方案2:公式法(适配无Power Query的旧版本Excel)
- 新建空白汇总表,输入表头
name、source。 - 点击
name列第一个数据单元格(假设为A2),输入公式后下拉到无数据显示为止:=IFERROR(INDEX(FRUITS[name],ROW(A1)),INDEX(PETS[name],ROW(A1)-ROWS(FRUITS[name]))) - 点击
source列第一个数据单元格(假设为B2),输入公式后和name列同步下拉:=IF(ROW(A1)<=ROWS(FRUITS[name]),"fruits","pets")
内容的提问来源于stack exchange,提问作者Cauder
相关产品推荐
相关产品推荐

