2014-10-03 40 views
26

Google電子表格可能是否可以達到上面單元格的值?從上面的單元格獲取價值

含義:在一個單元格中A2我想顯示上面單元格的值,即A1。不是因爲它是座標,而是因爲它是上面的單元格。我通過簡單的設置值等於上述細胞做到這一點:

enter image description here

如果我在這兩個之間創建一個新的行,我得到這個:

enter image description here

我們知道,這些值沒有變化,因爲這種引用不是相對的。我怎樣才能使它相對於細胞,所以我總是選擇上面的細胞什麼改變?我想要的結果是這樣的:

enter image description here

術語相對當然wrong in the case,但我希望你明白我的意思。 I 想要通常的相對行爲(所以我可以移動單元格本身,其參考將適合新的顏色和行)以及行爲,該參考不指向特定的固定座標,而是細胞本身的特定路徑。

回答

55

你可以這樣解決這個問題:

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

COLUMN()返回一個數字參考當前列

ROW()返回一個數字參考當前行。

在此處的示例中,從行中減1將爲您提供前一行。這個數學可以應用到ROW()和/或COLUMN(),但在回答你的問題時,這個公式將引用上面的單元格。

然後我們有ADDRESS()它接受一個數字行和列引用,並返回一個單元格引用作爲一個字符串。

最後,INDIRECT()允許您以字符串形式傳遞單元格引用,並將其作爲公式處理。

谷歌電子表格爲您提供了幫助提示,當您輸入,這樣你輸入上面的公式,你應該得到每個功能的完整說明。

+0

謝謝你提供了一個很好解釋的答案。它完美的作品。 – Steeven 2014-10-03 12:45:06

+1

任何人都知道如何獲得所有以前的細胞? – 2017-01-13 07:26:06

+0

這個答案改變了我的生活。謝謝。 – 2017-06-30 06:23:18

7

對於任何人誰碰到這個問題絆倒,你也可以指定列通過做這樣的事情:

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

如果您返回列B中的值,但檢查列A中的前一行,這將派上用場。

-2

做到這一點,最好的辦法是:

  1. 轉到單元格A2
  2. 按Ctrl + F3
  3. 點擊添加名稱
  4. 在名稱選擇像 「LPrev」 的名稱(不雙引號)
  5. 在參考文獻按 「=!A1」(不含雙引號)

現在只需使用「= LPrev」來指向前一行的同一列中的單元格。

相同的技巧適合任何種類的相對參考。