使用VBA从另一个工作簿中提取数据

问题描述 投票:-7回答:1

我有两本工作簿。

在工作簿A中,我想在工作簿B的A列中找到单元格A11中的值(工作表'数据'),然后在列H中返回相应的值。该值必须粘贴到工作簿A中的单元格C11中。

必须打开和关闭工作簿B才能提取此数据,而无需用户手动打开它。

如何使用VBA代码实现此目的?优选地,基于工作簿A中的值来构建变量,例如,路径,文件名,工作表名称,上例中的列A和上例中的列H)。

链接到工作簿A:https://www.dropbox.com/s/e6ixr5ky4i2r6vw/Data%20extraction.xlsm?dl=0

excel vba excel-vba
1个回答
0
投票

我正在使用MS Office Excel Professional Plus 2010.只要用户不能将文件B存储在他无法再次访问的位置,Excel就可以在不需要VBA的情况下管理它。

在工作簿A中的单元格C11中键入“=”以开始编写公式。现在将窗口切换到工作簿B,然后单击工作表'数据'上的单元格A11。点击键盘上的“Enter”键......计算机应返回工作簿A.

C11中的公式现在应该显示工作簿B的文件名和单元格引用。

现在是神奇的开始:Excel已将此公式变为“数据连接”,并将在幕后工作以保持此单元格的更新。它可能会给你一个黄色条,要求激活自动数据更新,你应该接受。

测试并查看此方法是否满足您的要求。如果工作簿B存储在共享位置,请进行更多测试以查看是否不会弄乱它。

祝好运!

© www.soinside.com 2019 - 2024. All rights reserved.