2010-08-23 70 views

回答

59

要在Excel中解決這個問題,通常我只需鍵入上面單元格的文本行號,例如,如果我在單元格A7中輸入,我將使用公式=A6。然後,如果我將該公式複製到其他單元格,它們也將使用前一個單元格的行。

另一種選擇是使用Indirect(),它將內部的文字說明解析爲公式。你可以使用類似:

=INDIRECT("A" & ROW() - 1) 

上述公式將解析爲A列的單元格的值和比它包含公式的單元格的小一排。

+0

謝謝,就是這樣! – Bliznak 2010-08-23 15:41:29

+0

偉大的東西用這個來創建差異高亮 – 2014-09-30 15:30:07

+1

這個答案救了我很多麻煩,+1:D – 2016-09-01 00:47:28

1

我跟隨BEN和謝謝和批次的答案,所以我用他的想法得到我的解決方案,我張貼相同因此,如果其他人有類似的要求,那麼你也可以使用我的解決方案,我的需求是類似於我想要從第一行到最後一行獲取全部數據的總和,並且我以編程方式生成電子表格,所以不需要也不能硬編碼行名稱,因爲數據總是動態的並且行數永遠不會保持不變。 我的公式如下所示。

=SUM(B1:INDIRECT("B"&ROW()-4)) 
+2

請考慮編輯你的答案,所以它只會回答原來的問題(許多細節可以很容易地省略) – arghtype 2015-01-12 12:43:26

7

此公式不需要行字母引用(「A」,「B」等)。它將單元格的值返回到同一列中的上一行。

=INDIRECT(ADDRESS(ROW()-1,COLUMN())) 
+0

我能夠通過在第一行輸入一個文字「1」來創建行索引(編號),然後使用公式上面,在正下方的其餘字段中用「+ 1」修改。它完美的工作! '= INDIRECT(ADDRESS(ROW() - 1,COLUMN()))+ 1' – 2017-03-25 14:35:06

0

對我來說更簡單的方法就是切換到R1C1符號,只是使用R[-1]C1,完成後切換回來。

0

如果您位於命名錶中,也可以使用=OFFSET([@column];-1;0)