跨列复制公式

时间:2013-01-17 19:36:57

标签: excel copy

我有一个包含4列的电子表格:A,B,C,D。

我想计算A-B和C-D之间的差异。所以在单元格E2中输入公式= A2-B2,得到我想要的结果,这是A-B之间的差异。

现在我将E2中的公式拖到单元格F2,期望Excel会“思考”现在我想要C-D之间的区别。但是,当我将公式从E列拖到F列时,我得到= B2-C2(你看,Excel假设我想再次使用B2)。

我的问题是:如何让Excel“理解”我想在= A2-B2之后使用= C2-D2,而不是= B2-C2?

这是一个简短的例子。原始数据集有数百列。谢谢你的帮助。

3 个答案:

答案 0 :(得分:1)

  1. 在E2中输入公式
  2. 将公式拖到G2。现在G2将拥有你想要的公式。
  3. 删除Col F.现在Col G将移至Col F,它将具有您所需的公式

答案 1 :(得分:0)

在UI中没有办法让Excel“思考”那么多 - 如果您将引用拖过它,它只会将引用移动一列。如果删除中间的列不是一个选项,则需要重写公式,例如:

=OFFSET(A1,0,COLUMN(L1)-COLUMN($L1))-OFFSET(B1,0,COLUMN(L1)-COLUMN($L1))

在此示例中,假设您开始显示L列中的差异 - 当然您需要根据工作表进行调整 - 但一旦完成,您可以根据需要将公式拖到右侧。 / p>

答案 2 :(得分:0)

由于您的原始数据集有数百列,您可能需要使用非易失性公式,例如:

=INDEX(A1:K1,1+COLUMN(L1)-COLUMN($L1))-INDEX(A1:K1,2+COLUMN(L1)-COLUMN($L1))

这将加快工作簿中的计算速度。根据数据集的大小以及工作簿中有多少其他公式,速度的差异可能很大。

同样的条件适用于彼得的例子。