excel - 如何禁用 Excel 在复制/粘贴后自动更改单元格引用?

标签 excel excel-formula reference cell copy-paste

我正在处理一个庞大的 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 :

  1. 将 Excel 置于公式查看模式。最简单的方法是按 Ctrl+` (该字符是“向后撇号”,通常与具有 ~(波浪号)的键相同.
  2. 选择要复制的范围。
  3. Ctrl+C
  4. 启动 Windows 记事本
  5. Ctrl+V将复制的数据粘贴到记事本中
  6. 在记事本中,按 Ctrl+A,然后按 Ctrl+C 复制文本
  7. 激活 Excel 并激活要粘贴公式的左上方单元格。并且,请确保您要复制到的工作表处于公式 View 模式。
  8. Ctrl+V 进行粘贴。
  9. 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/

相关文章:

excel - 如何使用具有两个匹配函数的地址函数作为宏或 VBA 的输入?

vba - 在 Excel 中搜索 Word 文档并列出值

excel - 矩阵将两个列表与一个公式相乘

javascript - 在 JavaScript 数组中存储 DOM 元素引用。为什么我不能重用存储的引用来添加 eventListener?

PHP - foreach 循环中变量之前的 & 符号

excel - 如何在 Microsoft Excel 中的公式后附加多行文本?

vba - 基于多个可选条件执行代码的有效方法 (Excel VBA)

excel - 有没有一种方法可以计算字符串中每个单词的字符数,并返回以逗号分隔的值?

Excel 日期格式 - 季度和年份

c++ - 关于引用和指向它们的指针的问题