自动化任务以访问Excel文件中的数据

时间:2018-04-17 21:41:50

标签: excel-vba powerquery vba excel

我在excel的初学者和中级用户之间,没有编码背景。不确定我是否需要使用电源查询。如果没有,任何完成相同操作的VBA代码都会很棒。

我希望自动整合数据并为10条生产线进行处理。

每个生产线在驱动器上都有自己的文件夹。

在每个行的文件夹中,有一个月文件夹示例 - 三月,四月等。

在每个每月文件夹中,有一个日期文件夹 - 5月1日,5月2日,5月3日等

每天都有3个excel文件 - Shift 1,Shift 2和Shift 3。

收集10个不同行的每个班次的数据,并由生产操作员手动输入其特定的班次excel文件。

驱动器上的其他位置有一个主文件处理来自这些行的数据,但目前必须手动将其传输到主文件 - 这是一个痛苦且超级耗时。

主文件包含每个生产线的2个工作表。我想将特定范围的单元格(H9:R24)从生产生产线文件复制并粘贴到专门为这些生产线制作的主文件中的特定工作表中。

我希望粘贴数据的单元格范围之前的列(在主文件中)包含日期,因此我希望代码/查询可以帮助我通过匹配shift excel文件中的日期进行粘贴。

每个shift excel文件在列,格式,公式等命名方面完全相同。

一旦粘贴到主文件中的特定工作表中,另一个工作表中的单元格(在主文件中)使用这些数字通过公式处理这些数字,并生成更多数字,例如废物%等,这些数字将自动绘制在不同的的曲线图。

我想通过单击主文件中的按钮来超级自动化此过程,以访问这些文件中的数据,复制并粘贴到主文件中特定工作表中的特定单元格中,并根据指定的公式处理数据(已经在单元格内)最终给出前一天每行的处理数字和图表。

这需要重复30个文件 - 每天3个文件,每行10行 - 每天早上第一件事。

我不确定是否需要使用电源查询。如果没有,任何完成相同操作的VBA代码都会很棒。

请求最善的帮助。

谢谢!

1 个答案:

答案 0 :(得分:0)

Power Query是执行此任务的最佳工具。你不应该需要任何VBA。

从获取数据/文件夹开始,并将其指向所有生产线的根文件夹。它将浏览所有子文件夹,并为您提供一个文件列表,每个文件的路径为一个表格。

只要单个文件内容一致,您就可以点击Combine生成一个将为每个文件重复的功能查询。您需要在该查询中构建转换逻辑。

您可以通过“参考”对此主查询构建查询,例如转换特定图表要求的数据。

“单击按钮”将显示在Excel的标准“刷新”按钮上 - 这将重新运行所有查询并刷新其输出表。可以使用单行VBA宏或使用Power Update插件自动执行此操作。