我正在处理一个庞大的 Excel 2003 电子表格。有很多非常大的公式和很多单元格引用。这是一个简单的例子。
='Sheet'!AC69+'Sheet'!AC52+'Sheet'!AC53)*$D$3+'Sheet'!AC49
其中大多数都比这更复杂,但这让我很好地了解了我正在处理的内容。这些单元格引用很少是绝对的($s)。我希望能够将这些单元格复制到不同的位置,而不改变单元格引用。我知道我可以简单地使用 f4 使引用成为绝对引用,但是数据很多,我稍后可能需要使用 Fill。有没有办法暂时禁用复制粘贴/填充时的单元格引用更改,而不使引用绝对化?
编辑:我刚刚发现您可以使用 VBA 通过将单元格内容复制为文本而不是公式来完成此操作。但我不想这样做,因为我想一次复制整行/列。我缺少一个简单的解决方案吗?
最佳答案
来自http://spreadsheetpage.com/index.php/tip/making_an_exact_copy_of_a_range_of_formulas_take_2 :
- 将 Excel 置于公式查看模式。最简单的方法是按 Ctrl+` (该字符是“向后撇号”,通常与具有 ~(波浪号)的键相同.
- 选择要复制的范围。
- 按Ctrl+C
- 启动 Windows 记事本
- 按Ctrl+V将复制的数据粘贴到记事本中
- 在记事本中,按 Ctrl+A,然后按 Ctrl+C 复制文本
- 激活 Excel 并激活要粘贴公式的左上方单元格。并且,请确保您要复制到的工作表处于公式 View 模式。
- 按 Ctrl+V 进行粘贴。
- 按 Ctrl+` 可退出公式查看模式。
注意:如果粘贴回 Excel 的操作无法正常工作,很可能您最近使用过 Excel 的“文本到列”功能,并且 Excel 正在尝试通过记住您上次解析数据的方式来提供帮助。您需要启动“将文本转换为列向导”。选择分隔选项并单击下一步。清除除 Tab 之外的所有 Delimiter 选项复选标记。
或者,来自http://spreadsheetpage.com/index.php/tip/making_an_exact_copy_of_a_range_of_formulas/ :
If you're a VBA programmer, you can simply execute the following code:
With Sheets("Sheet1")
.Range("A11:D20").Formula = .Range("A1:D10").Formula
End With
关于excel - 如何禁用 Excel 在复制/粘贴后自动更改单元格引用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6668383/