如何在 Excel 电子表格中插入一行并更新外部工作簿中引用的单元格

如何在 Excel 电子表格中插入一行并更新外部工作簿中引用的单元格

我遇到了多对一工作簿/电子表格的情况。我有许多工作簿指向单个工作簿 A(主工作簿)。每个外部工作表都有一个唯一的单元格,它在工作簿 A 的 G 列中引用该单元格。

主工作簿 A 按字母顺序排列,G 列经常更新。有时,我必须在主工作表中添加或删除一行数据。当我在此主工作表中插入或删除一行时……它会丢弃外部工作表中的所有单元格引用。

如何在按字母顺序排列的主工作表 A 中插入或删除一行,并让 Excel 更新外部工作表中的单元格引用以对应其新行的位置?

希望这是有意义的,并提前感谢任何帮助。

答案1

选项 1:跳过 G 列必须按字母顺序排列的要求。通过将行标记为已删除来删除行,并始终在工作表末尾插入行。这当然是为了保持外部引用的稳定性。

选项 2:将外部引用更改为键值(特定行的唯一标识符)而不是特定单元格,然后使用 VLOOKUP 或类似方法从 G 列检索值。

=VLOOKUP("uniqueId";[WorkbookA]Sheet1!A1:G1000;7;FALSE)

答案2

这在您的环境中可能不切实际,但是如果在主工作簿插入一行时所有引用主工作簿的工作簿都处于打开状态,则在插入时它们对主工作簿的引用将自动调整。

答案3

如果您使用 Excel 2007+,我建议使用数据 > 来自其他来源 > 来自 Microsoft Query:

  1. 选择 Excel 文件并选择您的主 Excel
  2. 选择列(如果您没有看到任何列的列表,请确保检查选项>系统表)
  3. 如果需要,编辑数据>连接>选择新连接>属性>定义>命令文本,如 SQL...

答案4

遇到了同样的问题,浏览互联网一段时间后找到了简单的解决方案

按住 ctrl 键选择多个选项卡,同时在有参考的选项卡上

然后右键单击要添加行的位置

然后在下拉菜单中选择插入

相关内容