在Excel的同一表格中引用上一行的单元格?


14

我如何引用

  • Color列,
  • 在上一行中
  • 在同一张桌子上

从同一张桌子的一个单元格?尽可能不依赖工作表的绝对行/列号。

[[Color],-1]...

Answers:


25

如果要使用结构化参考格式,请尝试

=OFFSET([@Colour],-1,0)

您也可以在不使用结构化引用的情况下执行此操作。例如,在表格的第2行(第一个数据行)中,输入

=D1

...如果“颜色”在D列中。(根据您的情况调整)。在Offset()易失性的情况下,后者在大型数据集中的运行速度会更快,并且只要工作簿中的任何单元格发生更改都会重新计算。这会极大地影响性能。


2

我几乎总是在我的表中为索引创建一个名为“ I”的单独列,其编号为1,2,3,4 ...然后使用来获得先前的值INDEX([Colour],[@I]-1)

您也可以从0开始对列进行编号,并相应地调整公式,因为您几乎总是在访问该行。

volatile OFFSET函数导致我的大型工作簿崩溃,因此我建议不惜一切代价避免。


如何在始终获取新数据的表中建立索引?手动吗?还是用公式?后者是22号,对吧?
teylyn

@teylyn我通常手动进行。对我来说,这是因为我对数据索引进行排序时不会更改。我确信您可以根据自己的应用程序使用公式来发挥创意,例如使用=ROW()-2
user3575270

1
如果使用公式创建索引,然后在另一个公式中引用该索引,则也可以将索引的公式嵌套到第二个公式中。
teylyn

您可以使用ROW() - ROW([#Headers]) - 1
所罗门·乌科

2

我知道这是一篇过时的文章,但是就像我现在需要类似的东西一样,我相信这可能对以后的人有所帮助。如果您需要在表列上进行求和,例如:

  • 第1列包含“收入”数据(正值和负值)
  • 第2栏是帐户的“余额”

对于每一行,您需要添加上一个余额(第2列,上一行)和收入(第1列,当前行)以计算当前余额。

一种实现方法是根据teylyn的答案在第2列中使用以下公式:

=SUM([@Column1];OFFSET([@[Column2]];-1;0))

这将处理第一行中发生的一些错误

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.