1

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

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

现在我将 E2 中的公式拖到单元格 F2 中,期望 Excel 会“认为”现在我想要 CD 之间的差异。但是,当我将公式从 E 列拖到 FI 列时,得到 =B2-C2(你看,Excel 假设我想再次使用 B2)。

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

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

4

3 回答 3

1
  1. 在 E2 中输入公式
  2. 将公式向上拖动到 G2。现在 G2 将拥有您想要的公式。
  3. 删除 Col F。现在 Col G 将移动到 Col F,其中将包含您所需的公式
于 2013-01-17T20:39:38.940 回答
0

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

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

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

于 2013-01-17T23:01:42.913 回答
0

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

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

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

与彼得的例子相同的条件适用。

于 2013-01-20T03:06:38.720 回答