Excel 数据提取VBA宏的技术限制

Excel 数据提取VBA宏的技术限制,excel,vba,extraction,Excel,Vba,Extraction,各位!! 这是我在这里的第一篇文章,作为一个新手,我希望我的问题会有意义。 我是一名在一家大公司工作的法国实习生,被指派制作一份“自动报告”(我知道,另一份…) 情况相当混乱,每个部门都为自己生成报告,其中包含的名称、布局、大小和数据几乎没有限制。(这意味着从一个月到另一个月,每个部门可以添加或取消一个指标,更改数据的处理等。) 我在绩效和战略部门工作,需要创建一个四表Excel文件,最好能够从每月发布的不同文件中获取相关数据。我无法改变内联网上文件更新的方式,我的老板在计算方面显然是文盲 我(

各位!! 这是我在这里的第一篇文章,作为一个新手,我希望我的问题会有意义。 我是一名在一家大公司工作的法国实习生,被指派制作一份“自动报告”(我知道,另一份…)

情况相当混乱,每个部门都为自己生成报告,其中包含的名称、布局、大小和数据几乎没有限制。(这意味着从一个月到另一个月,每个部门可以添加或取消一个指标,更改数据的处理等。)

我在绩效和战略部门工作,需要创建一个四表Excel文件,最好能够从每月发布的不同文件中获取相关数据。我无法改变内联网上文件更新的方式,我的老板在计算方面显然是文盲

我(我还不知道如何使用VBA,但我学得很快)是否有可能做到这一点,同时对她透明(零操作或非常简单的操作),并适应不断变化的数据文件格式

提前感谢您的回答,如果我没有正确地解释我自己,请原谅。 祝大家今天过得愉快!
朱尔斯

所有的任意文件都是什么格式

在VBA中,只要知道数据的格式和组织方式,就可以打开相当多的文件类型并读取数据

如果这些文件也在Excel文件中,则可以使用工作簿

Dim wbReport As Workbook
Set wbReport = Workbooks.Open("ArbitraryDirectory\\ArbitraryfileName.xlsx")
然后像使用主工作簿一样使用该工作簿

OneOfYourFourTables.Cells([Row], [Column]) = _
   wbReport.Sheets("TheArbitrarySheet").Cells([Row], [Column])

或使用范围对象和/或复制方法。(我通常喜欢在单元格中循环()。

您好,谢谢您的快速回答。这只是excel文件,我将尝试这种方法,看看结果如何。不过我确实有一个小问题。这些文件大多是动态交叉表(我不确定确切的翻译)。当我更改参数时,[行],[列]寻址系统无法工作…我建议您学习如何在VBA中使用图纸,并考虑其他excel文件的格式/结构。当然,有一种方法可以通过编程找到所需数据的位置。在这种情况下,你说“不起作用”,但没有说明你尝试了什么或如何/为什么不起作用。数据通常有标题行,这些标题行保持静态,并提供易于搜索的锚。