2011-04-09 58 views
23

如何創建在刪除行時無效的公式。在Excel公式中使用相對位置

例如在細胞F12我具有下式:= F11 + D12-E12

這基本上說從細胞取的值以上,則小區2的值添加到左側和中減去的值該單元格直接在左側。

但是,因爲我使用的實際單元格地址,只要我刪除一行,所有行之下變得無效。

我如何表達由相對位置的式(即= 「1以上」 + 「2至左」 - 「1至左」)

感謝。

回答

30

您可以使用

  • =OFFSET(F12,-1,0)+OFFSET(F12,0,-2)-OFFSET(F12,0,-1),或
  • =INDIRECT("F11",true)+INDIRECT("D12",true)-INDIRECT("E12",true)
  • =INDIRECT("R11C6",false)+INDIRECT("R12C4",false)-INDIRECT("R12C5",false)
  • =INDIRECT("R[-1]",false)+INDIRECT("C[-2]",false)-INDIRECT("C[-1]",false)

兩個功能還允許指定範圍,只需使用任何有您的個人喜好(請參閱Excel的幫助)...

+0

要爲'INDIRECT'函數的字符串第一個參數,你也可以用各種方式使用'ADDRESS'函數...:] – mousio 2011-04-09 23:49:32

+1

對於偏移量,有沒有辦法從當前單元格偏移?所以像= OFFSET(this,-1,0)而不是明確添加F12? – 2013-05-31 21:15:02

+2

當然,只要與'indirect'結合:如果'offset(this,-1,0)'是你的目標,你可以使用'indirect(「R [-1],false)',或者如果你確實需要' offset「,那麼我建議使用'offset(indirect(」RC「,false), - 1,0)'。 – mousio 2013-05-31 21:31:59

3
  • 您可以切換如在R1C1引用樣式(Excel選項)
  • 使用OFFSET函數(例如=OFFSET(F12;-1;0)以上)
+0

嗨霍華德,謝謝你的幫助。我想要的完整OFFSET公式是= OFFSET(F12,-1,0)+ OFFSET(F12,0,-2)-OFFSET(F12,0,-1) – FloatLeft 2011-04-09 08:54:33

1

閱讀字裏行間......是你創造的增加和扣除列的運行總計實際問題?

可以和每一列開始的絕對引用與相對引用

假設行11結尾是你的第一個,把=SUM(D$11:D12)-SUM(E$11:E12)在F12。

當你複製此單元格下來絕對引用保持不變,其中相對引用自動更新擴大範圍。你甚至可以將公式複製一行,它也可以在第一行工作。

刪除和插入線不破式中,雖然任何額外的細胞將被包括在SUM()。

+0

如果我猜對了,請查看http://meta.stackexchange.com/questions/66377/what-is-the-xy-problem – 2015-09-10 12:16:14