如何将多个文件中的特定单元格拉到单独工作表的列中?

如何将多个文件中的特定单元格拉到单独工作表的列中?

我有 40-50 个工作簿,每个工作簿大约有 5 列和 30 行,我需要将它们重新组织成单个工作簿中的多个工作表。为此,我需要从每个文件中提取特定单元格。我在下面创建了一个简化的示例来说明我想要做什么。

假设我和我的室友正在记录我们每月的支出,每个月都有一个单独的工作簿文件。该电子表格可能如下所示:

一月
姓名 杂货 实用工具 啤酒
马特 150美元 130美元 200美元
鲍勃 $175 80美元 50美元
佩吉 $85 35美元 $0

我有六个月的数据,我想将它们合并到一个工作簿中,每个类别都有单独的选项卡。杂货店希望这样:

一月 二月 行进 四月 可能 六月
马特 150美元 140美元 $124 101美元 $142 $66
鲍勃 $175 $137 80美元 $124 50美元 $111
佩吉 $85 $117 130美元 $75 $83 $126

实用程序和啤酒会有单独的标签。我该如何实现这一点?谢谢。

答案1

手动方式:

打开所有 50 个电子表格,并将每个表格复制到主表格中。如果所有表格都遵循相同的格式,您甚至可以使用3D 单元格引用,一旦所有工作表都复制到主工作簿中。或者,如果您需要保持与原始文件的有效链接,您可以简单地打开主工作簿和链接工作簿,然后编辑主工作簿中的单元格,键入 = 字符,然后单击链接工作簿中的单元格。

不幸的是,对于 50 个工作簿来说,这仍然是一件非常耗时的事情。问题是 Excel 对安全性非常严格。您不能简单地将文件名列表放在 A 列中,然后使用公式链接到这些文件名。本质上,您可以创建一个可以从计算机上的任何文件中窃取信息的工作簿。因此,Excel 主要要求您打开工作簿以授权和建立链接。话虽如此:

一些自动化方法

看一看这里寻找在 VBA 中或使用插件执行此操作的方法。

一个稍微不那么乏味的替代方案

看一看这里在我之前的回答中,有关于访问外部工作簿的方法。

上述安全限制有一个解决方法。在 A 列中列出所有文件名。然后在下一个单元格中以文本形式构建“公式”,格式为 #'path[filename]Sheetname'!A1 - 但作为单元格中的文本。然后将结果复制粘贴为下一列中的值,然后搜索并替换 # 为 =,这会将所有这些文本值转换为实时和链接的公式。您可能仍需要打开所有工作簿(至少一次?也许?),但它可以节省大量点击次数。请参阅此回答

相关内容