如何在Excel中运行批处理查询并将结果导入工作表?

目前我正在使用包含这个查询的batch file:

dir "\\directory\folder\example" > file.xls /b /o 

一旦我执行它,我会收到用作工作簿中数据源的.xls文件。

一旦打开工作簿并将数据导入指定的工作表,是否可以运行这样的查询?

在Excel中,您可以使用Power Query将Excel文件作为数据源加载,或列出文件夹中的所有文件,然后将这些文件用作数据源。

Power Query可从Microsoft为Excel 2010和2013免费下载,并作为“获取和转换”数据function区内置于Excel 2016中。

使用这种技术构build的查询可以从Excel工作簿中刷新。

编辑:如果您使用旧版本的Excel,则可能需要使用VBA将文件列表导入到Excel中。 我已经写了一个例程,并在“ 列出文件夹中的所有文件到Excel ”中详细描述它。 你的口味可能做得太多了,但你总是可以把东西扔出去。 该链接包含一个包含所有代码的示例文件。

你也可以使用一个命名公式。

  • 将path和filefilter放在单元格A1中,例如:c:\ Users \ YourName \ Documents \ *。xls *
  • 按下F3键并点击“新build”
  • 将其命名为“ListOfFiles”(不带引号)
  • 在referto框中input:

= FILES($ A $ 1)

  • 按确定并closures名称pipe理器
  • 在B1单元格中input:

= INDEX(ListOfFiles,ROW())

  • 向下拖动B1,直到获得#REF!