我有一张如下所示的工作表。我想将工作簿 B 中的所有公式复制到 A 中,但不引用工作簿 B。
当我现在这样做时,我目前得到的所有公式到工作簿 B 的链接。但我只想要链接到我当前工作簿(工作簿 a)的公式
如果我复制一个基本求和公式,它可以起作用,但是当公式涉及表格时,引用的是工作簿 B。
这是一个示例公式,
=IF(Start!$D$8="Weekly",0.000001*SUMIFS(tbl_database[Value],tbl_database[Node],H$2,tbl_database[Type],$A14,tbl_database[Accounting],$C$1,tbl_database[Filter],"No"),0.000001*SUMIFS(tbl_database[Value],tbl_database[Node],H$2,tbl_database[Type],$A14,tbl_database[Accounting],$C$1,tbl_database[Source],"<>stack",tbl_database[Source],"<>overflow"))
工作簿 A 表 a:
工作簿B工作表B
如果我转到公式栏并将实际公式从工作簿 B 复制到 A,我会得到预期的结果,但正如您所看到的,使用所有这些公式,它可能很乏味。
答案1
在 Excel 2010 中测试
将表格的任何部分从 A 复制到 B 都会引用回 A。复制整个表格(必须包括标题!)不会引用回 A - 除非公式引用了不同的表格或不同的工作表。引用表格外部但位于同一工作表上的范围的表格中的公式将正确引用 B。
一个解决方案(尽管不是很好)是确保在复制到 B 之前表中没有任何引用另一个表或工作表的公式。您可以通过将 A 中的数据迁移到同一张工作表来实现这一点。
正如评论中所提到的,使用Ctrl H
查找对工作表的所有引用并替换为空字符串是粘贴后解决问题的快速方法。
评论中没有提到命名范围指向 A 的可能性,很可能是链接断开。您可以尝试使用工作表范围(而不是工作簿)来缓解这种情况,但粘贴到 B 后,您可能仍需要在名称管理器中编辑/删除它们。
我热衷于 VBA,并相信最好的解决方案是在 A 中编写生成原始报告的代码。这将消除从 A 复制到 B 的要求,只需根据需要运行程序即可生成新报告。
答案2
不是很优雅但是......为什么不允许复制引用然后使用编辑/替换将它们全部删除?