【问题标题】:Is there a way to have separate Excel files be imported into a Master document有没有办法将单独的 Excel 文件导入主文档
【发布时间】:2016-09-14 19:48:33
【问题描述】:

我有 60 个文件都具有相同的标题。我需要的是从 1 个主文档中导入所有 60 个文件或 1 个文件夹(所有 60 个文件所在的文件夹)中的数据的方法。这些都是 Excel 电子表格 - 没有编写代码,没有按钮。我只需要有关如何执行此操作的指导。我可以使用 Excel 的“获取外部数据”按钮之一吗?任何建议将不胜感激。

【问题讨论】:

  • 这 60 个工作簿的结构是否每个月都相同?还是要删除添加的列/行?
  • 60 个工作簿的结构和标题永远不会改变。但是里面的数据会按照输入的方式添加。
  • XML 源会做什么?

标签: excel import


【解决方案1】:

这可以通过 Power Query 来完成,Power Query 可从 Microsoft 免费下载,用于 Excel 2010 和 Excel 2013,并以 Get & Transform 的形式内置到 Excel 2016 中。

您可以从一个文件夹中导入所有文件并将它们合并到一个结果表中。当新文件添加到文件夹中时,您只需要刷新查询即可。

大部分操作都可以通过单击按钮来完成。您只需手动输入一行代码。 Ken Puls 在他的blog post here 中有一个教程。

您无需一路创建函数。首先,您可以简单地将其粘贴到 Power Query 的高级编辑器中并调整文件路径:

let
    Source = Folder.Files("D:\Folder\Subfolder"),
    RemovedOtherColumns = Table.SelectColumns(Source,{"Content", "Name"}),
    GetExcelTables = Table.AddColumn(RemovedOtherColumns, "content", each Excel.Workbook([Content])),
    ExpandedExcelContent = Table.ExpandTableColumn(GetExcelTables, "content", {"Data"}, {"Data"})
in
    ExpandedExcelContent 

【讨论】:

  • 文件夹中的文件将保持不变,只是文件中的内容会发生变化。结果会不会一样?
  • 是的,这会起作用。您也可以手动创建对 60 个文件的查询,但这种方法更快。
猜你喜欢
  • 2015-08-24
  • 2017-08-01
  • 2020-09-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-10-07
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多