我正在处理大量的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不能正常工作,则可能是您最近使用了Excel的“文本到列”功能,并且Excel会通过记住上次解析数据的方式来提供帮助。您需要启动“将文本转换为列”向导。选择“定界”选项,然后单击“下一步”。清除除“制表符”之外的所有“定界符”选项复选标记。
或者,从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