将行复制到另一个电子表格时的Excel 2007更新参考

时间:2012-03-16 17:53:26

标签: excel vba reference formula

我有两个预填充的电子表格(“主要数据”和“可变价格”)和VBA代码,它们使用“可变价格”中的一些值将“主数据”中的一行格式化并复制到“结果”表中。

在第一张纸上,使用BR列中的单元格计算某个值,当行复制到“结果”表时,该值将移动到另一列BY。

发生了一件可怕的事情,现在计算'结果'总计的公式没有更新,并从BR栏中获取无关的值。

如何手动(我猜测,当我半年前把它放在一起时,引用会自动更新,但是当我的老板编辑/复制其他文件的数据或整行数据时删除了文件,之后删除了文件 - 我现在收到“断链”消息)将其设置回来?

我希望这是清晰易读的。这是我唯一的VBA体验,它的操作仍然有些神秘。

谢谢!

1 个答案:

答案 0 :(得分:1)

当您将数据作为公式复制并且希望将引用部分引用到原始列/单元格时,可以“锁定”引用。单元格中的示例:

= A1,当向右复制两列时会导致= C1或 = A1,当向下复制拖曳行时将导致= A3。

您可以通过从引用中添加$ in来修复/锚定公式中的列,行或两者。 = $ A1仍然= $ A1,即使向右复制两列也是如此。 = 1美元,仍然= 1美元,即使复制了两行也是如此。 = $ A $ 1将始终保持= $ A $ 1,无论你将其复制到哪里。

或者,如果您只想要值(不是公式),请使用paste.value或 cells(ref.target).value = cells(ref.org).value。

哦忘了告诉你,当你突出显示一个单元格地址(A1)并按F4时,你可以在$ A $ 1,$ A1,A $ 1,A1

之间切换4个阶段