web-dev-qa-db-ja.com

Excelの数式で相対位置を使用する

行を削除しても無効にならない数式を作成するにはどうすればよいですか。

たとえば、セルF12には次の式があります。= F11 + D12-E12

これは基本的に、上のセルから値を取得し、セル2の値を左に追加し、セルの値を直接左に減算することを意味します。

ただし、実際のセルアドレスを使用しているため、行を削除するとすぐに、下のすべての行が無効になります。

相対位置で式を表現するにはどうすればよいですか(つまり= "1 above" + "2 to left"-"1 to left")

ありがとう。

29
FloatLeft

どちらでも使用できます

  • =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ヘルプを参照)…

36
mousio
  • 切り替えることができますR1C1参照スタイルへ(Excelオプション)
  • OFFSET関数を使用します(上記の=OFFSET(F12;-1;0)など)
5
Howard

行間を読む...あなたの実際の問題は、追加と控除の列から積算合計を作成していますか?

絶対参照で始まり、相対参照で終わる各列を合計できます。

行11が最初であると仮定して、=SUM(D$11:D12)-SUM(E$11:E12)をF12に入れます。

このセルを下にコピーすると、相対参照が範囲を拡張して自動的に更新する絶対参照は同じままです。数式を1行上にコピーすれば、最初の行でも機能します。

行を削除して挿入しても、数式は壊れませんが、余分なセルはSUM()に含まれます。

1
Stephen Turner