• ベストアンサー

ある列に入力されている行までを参照して他列を計算

表のように、その月の日ごとの計画売上高がすでに打ち込んであって、 当月の売上高を毎日書き込んでいくようなシートで、 その日ごとの売上達成率は当然問題なく計算できますが、 一番下の合計、つまりその月の現時点での売上達成率を計算する方法がわからず困っております。(黄色セル) 実際の売上高は一番下に合計が出るのでこれを参照すれば良いのですが、 計画売上高はその月のすべての計画の合計が出てしまっているので、今現在、当月売上高が入力されている行までの合計を参照して計算したいのです。 この例でいうと、黄色セルは現在88%になります。 どなたかご教示頂けないでしょうか。 宜しくお願い致します。

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

  • ベストアンサー
  • kkkkkm
  • ベストアンサー率66% (1742/2617)
回答No.2

D18に =C18/SUM(INDIRECT("B2:B"&COUNT(C2:C17)+1)) としてみてください。 最後の+1はデータが2行目からC列をカウントして結果が8になるので行番号の9を出すために1足しています。

momoko7167
質問者

お礼

迅速なご回答とわざわざエクセルに起こしてくださった点でBAとさせて頂きました。 私自身の見識も広まり、感謝です。。 ありがとうございました。

その他の回答 (2)

回答No.3

「計画売上高」がB列、「当月売上高」がC列として、 =SUM(C2:C17)/SUMIF(C2:C17,"<>",B2:B17) でどうでしょうか。 SUMIFの条件に"<>"を指定すると、空白以外のセルが対象となります。検索する列に「当月売上高」を指定し、計算する列に「計画売上高」を指定することで、「当月売上高」が空欄でない行の「計画売上高」の合計が出せます。 COUNTで数を出すやり方だと、途中に空欄がある場合に正しく計算できなくなります。

momoko7167
質問者

お礼

とてもわかりやすいご回答を頂き、ありがとうございました。 非常に実用的な数式で助かっております。臨機応変で使い分けていこうと思います。 私自身の知識も深まり、大変感謝しております。。

  • aokii
  • ベストアンサー率23% (5210/22063)
回答No.1

=735000のセル/1670000のセル、の式を黄色のセルに記入して、セルの書式を%にしてみてください。

関連するQ&A