Vba 如何在Excel中将单元格从多张工作表自动转移到一张主工作表
我有一个工作簿,其中有一个主表,列出了所有组合资产,还有几个子表(列出了有形资产、证券等)。为了简单起见,假设主工作表包含两列:Name和Value。子表包括不需要转移到主表的其他列(例如,获取日期、依据等)。对于单个子工作表上的每个新条目,我希望在主工作表上插入新行,并将相关数据添加到单元格中 证券工作表:Vba 如何在Excel中将单元格从多张工作表自动转移到一张主工作表,vba,excel,Vba,Excel,我有一个工作簿,其中有一个主表,列出了所有组合资产,还有几个子表(列出了有形资产、证券等)。为了简单起见,假设主工作表包含两列:Name和Value。子表包括不需要转移到主表的其他列(例如,获取日期、依据等)。对于单个子工作表上的每个新条目,我希望在主工作表上插入新行,并将相关数据添加到单元格中 证券工作表: Name Value Acquisition Date Basis AAPL $450 1/8/2010 $211 GE
Name Value Acquisition Date Basis
AAPL $450 1/8/2010 $211
GE $2,500 11/1/2011 $1,500
有形资产工作表
Name Value Insured
Jewelry $6,000 Yes
China $1,200 No
主工作表-合并资产列表:
Name Value
AAPL $450
GE $2,500
Jewelry $6,000
China $1,200
这可以通过Excel公式实现,还是需要VBA
如果您有任何关于最佳方法的建议,我们将不胜感激
谢谢。这可以通过使用“获取外部数据”来实现(注意,尽管名称不同,但这可以用于工作簿中的自我引用) 此答案基于Excel 2010。如果您使用的是不同的版本,仍然可以,但访问这些功能的菜单可能不同 步骤:
Master
工作表的“数据”选项卡中,选择“获取外部数据/来自其他来源”(SELECT `'Tangible Assets$'`.Name, `'Tangible Assets$'`.Value
FROM `Securities$` `Securities$`, `'Tangible Assets$'` `'Tangible Assets$'`)
UNION
(SELECT `Securities$`.Name, `Securities$`.Value
FROM `Securities$` `Securities$`, `'Tangible Assets$'` `'Tangible Assets$'`)
OK
现在,每当更新源数据表时,请刷新主查询以获取最新数据。我还没有测试过它,但它看起来很优雅!我会记住的。我不知道您可以使用获取外部数据进行自我引用。这看起来是一个很好的简单解决方案。不幸的是,它在Mac上似乎不起作用,因为Excel需要使用第三方ODBC管理器。