• ベストアンサー

Excel:決まったセルから常にあるセルの最終行の引き算

添付画像のA7~E7列に数値を入力していき、F列にB~Eの合計がSUM関数により表示されます。 必要に応じ、8行目以降にデータは累積していきます。 D4セルにC4からF列の常に最終行の引き算の数式を入れたいと思っています。 イメージは D4=C4-(F列の最終行)というものですが、具体的にどういう数式をD4セルに当てはめればよいでしょうか? 御教示宜しくお願い致します。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.6

私もmike_gさんに賛成。訪問経費で粗利を食いつぶしていく図式な んだから、最後に訪問したときの費用だけ引くのは無理があるで しょう。過去の経費の合計全部引かないとおかしい。 とすれば、単にsum(F:F)を引くだけでオッケーなんですが。

Youyou
質問者

お礼

ありがとうございます。 確かに仰せのとおりかもしれません。 参考にさせていただきます。

その他の回答 (7)

  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.8

こんにちは! 質問の細かい内容は無視させていただいて・・・ 無理矢理って感じもしますが、 F行の最終行の数値を常に表示させるには =INDEX(F:F,MATCH(MAX(F:F)+1,F:F),1) という方法もありますので、 D4=C4-INDEX(F:F,MATCH(MAX(F:F)+1,F:F),1) とすればある程度希望に近い表示になるのではないでしょうか?

Youyou
質問者

お礼

ありがとうございます。 色々な方法があることがよく判り、大変勉強になりました。 また、よろしくお願いいたします。

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.7

中身から類推すると >D4=C4-(F列の最終行) ではなく D4=C4-(F列の累計) では無いですか? (得意先ごとのかかった費用を計算・合計し、収益から差し引いて、利益状況を把握?) 小生の誤解でしたら、この分無視してください。 ーーーー 累計なら、少し行を多めに指定してもよいので D4=C4-SUM(F7:F20) などでよいのではと思いました。 ーー 以下は余分な件で F列の0は目障りなので書式で消す。 http://officetanaka.net/excel/function/tips/tips13.htm など参考。

Youyou
質問者

お礼

ありがとうございます。 質問の仕方があいまいでご迷惑をおかけしています。 色々役に立つテクニックをご教示いただき、感謝いたしております。

noname#204879
noname#204879
回答No.5

「F列の最終行」とは、お示しのワークシートの場合は、単にセル F8 のことですか? D4: =C4-SUM(F7:[F列の最終行])としたいのではありませんか?

Youyou
質問者

お礼

ありがとうございます。 補足要求の件ですが、先の回答者様への回答でも申し上げましたとおり、まだ方針が固まっていません。 皆様のご回答を参考にしながら、固めていきたいと思っています。

  • sige1701
  • ベストアンサー率28% (74/260)
回答No.4

>D4=C4-(F列の最終行)というものですが 添付画像では、 D4の値が319000になっていますが C4-(F列の最終行)からすると、F列の最終行の値は31000ですので、 F7が最終行なのかな(F8にも値があるようですが・・・) また、F9以下に0が入っていますが、0は除くと言うことかな 上記の件はおいといて F列の式を変更して F7=IF(COUNT(B7:E7),SUM(B7:E7),"") D4=C4-LOOKUP(10^10,F:F) そのままの表で行うなら D4=C4-INDEX(F7:F300,COUNTIF(F7:F300,">0")) OFFSET、INDIRECT関数は揮発性の関数です (個人的におすすめしません)

Youyou
質問者

お礼

ありがとうございます。 色々助言いただき助かります。 まだ、この計算式は流動的なので、皆様のご回答を参考にさせていただきながら、すすめていきます。

  • ahirudac
  • ベストアンサー率46% (84/180)
回答No.3

ちょっと強引ですがこういうのはどでしょか(^^;)>。 =C4-OFFSET(F7,MATCH(0,F7:F1000,0)-2,0,1,1) ご参考までm(__)m。

Youyou
質問者

お礼

ありがとうございます。 こちらも試してみたいと思います。

  • soixante
  • ベストアンサー率32% (401/1245)
回答No.2

#1です。すみません訂正。 =MAX(F7:F1000) でなくて、 =MAX(G7:G1000) でした。

  • soixante
  • ベストアンサー率32% (401/1245)
回答No.1

私ならこうします。 1. G7セルに    =IF(F7>0,ROW(F7),0)  と入れ、下に引っ張る 2.どこでもいいですが、例えば、H7セルに =MAX(F7:F1000) とでも入れる。 (データ範囲は適当に調整してください。) つまり、F列の最終行の番号を取得しています。 3.D4セルに =C4-INDIRECT("F"&H7) と入れる。

Youyou
質問者

お礼

ありがとうございます。 試してみます。

関連するQ&A

専門家に質問してみよう