当我复制一个包含公式的单元格,然后粘贴到同一张纸上的另一个单元格中时,该公式的单元格引用将更新以反映新位置(考虑到绝对,相对和混合单元格引用等)
是否可以通过编程方式在Excel VBA中进行公式更新,将字符串公式从一个位置更新到另一个位置,而无需实际复制单元格并将其粘贴到另一个位置?
如果没有,您如何复制一个单元格并将其粘贴到VBA中的另一个位置?
编辑:Axel很好地回答了问题的第二部分。有没有一种方法可以解决问题的第一部分,而不必将其粘贴到单元格中(因为如果我需要做很多事情,那么我不得不猜测它可能会有点慢)?
答案 0 :(得分:0)
我真的建议您阅读Excel VBA中的R1C1
样式符号和FormulaR1C1
属性。 Excel
本身就是如何管理公式参考的更新以获取新位置。
例如,如果您在活动工作表的D5
中有一个公式,那么以下代码将把该公式的副本准确地放入E6
的Excel的GUI中。然后sFormula2
将以A1
样式表示法包含更新后的公式。
With ActiveSheet
sFormula1 = .Range("D5").Formula
sFormulaR1C1 = .Range("D5").FormulaR1C1
.Range("E6").FormulaR1C1 = sFormulaR1C1
sFormula2 = .Range("E6").Formula
End With