• ベストアンサー

エクセルにて平均値を表示したいけど?

エクセルにて平均値を表示したいけど? その方法が分かりませんので宜しくお願いします。 月別売上金の平均値を表示させたいのですが、 A列から1月B列2月順次L列12月としてM列に其の月までの平均値を表示させたいのですが 該当月までの平均値をIF関数にてできますでしょうか?  現在はAVERAGEの数式を該当月の列に置き換えて利用していますが 各月ごとに数値を入力すれば即該当月までの平均値が表示できればと思います。  尚 現在は年間分入力用書式を作成されて月末に数値を入力、数式を変える、作業をしています。 OSはオフィス2007を使用してます。 宜しくお願いします。

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

  • ベストアンサー
  • edomin7777
  • ベストアンサー率40% (711/1750)
回答No.1

もっと、かっこいいやり方が有ると思うが、思いつかない…。 A1~L1が入力エリアだとして、M1に =SUMPRODUCT((A1:L1)*((A1:L1)<>""))/COUNT(A1:L1) と入力すると、入っているセルだけの平均が出ます。

k-maru
質問者

お礼

お礼が遅くなりまして申し訳ありませんでした。 ご親切にありがとうございました。

その他の回答 (3)

回答No.4

A1~L1が入力エリアだとして A2に次の式を入力してL2まで右にコピーすると 2行目は該当月までの平均値が表示されます。 =SUM($A1:A1)/(COUNT($A1:A1)+COUNTBLANK($A1:A1))

k-maru
質問者

お礼

 早々のご回答ありがとうございました。 皆さんの方法、いろいろ試して見たいと思います。 ご親切にありがとうございました。

  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.3

いまお手元のシートの「正確な状況」が >現在は年間分入力用書式を作成されて月末に数値を入力、数式を変える、作業をしています。 来月以降のセルには,まだ「何も記入されていない空っぽのセル」になっていて,数式とか入って無くて,各月末に当月の「数字を直接セルに記入している」のなら,平均のセルは M2に =AVERAGE(A2:L2) だけで出来ます。わざわざ当月までの範囲に式を直す必要はありません。 実はホントはそのセルに直接数字を記入しているのでは無く別のシートに数字を入れていて,いまの表には数式で間接的に数字が入ってきますという場合。 今の各セルに入っている数式をたとえば =IF(COUNT(当月のセル範囲)=0,"",SUM(当月のセル範囲)) などといった数式にしておくと,平均のセルはやはり =AVERAGE(A2:L2) だけで出来ます。 今じつは各セルに数式が入っていて,さらに各セルの数式を何が何でも絶対変えちゃイケナイ場合は, =AVERAGEIF(A2:L2,">0") などのように出来ます。「実際に入れる具体的な数字の内容」に応じて,少し調整が必要な場合もあります。 いずれの数式も,1月の頭にまだ1月分もひとつも数字が入っていなかった時だけエラーになります。それも避けたければ =IFERROR(AVERAGE(A2:L2),"") のようにもう一つ関数をかぶせることもできます。1月の数字が入ればそれで不要になりますが。

k-maru
質問者

お礼

早々のご回答ありがとうございました。  質問の仕方が悪くて申し訳ありませんでした。 いろいろな方法を想定してのご回答ご親切にありがとうございました。

  • jcctaira
  • ベストアンサー率58% (119/204)
回答No.2

N1に該当月(1~12)を入力するとした場合 【M2】には以下の式を入れれば良いと思います。 =AVERAGE(OFFSET(A2:L2,,,,$N$1))

k-maru
質問者

お礼

早々のご回答ありがとうございました。 いろいろな方法が有るのですね。 ご親切にありがとうございました。