プロが教えるわが家の防犯対策術!

http://oshiete1.goo.ne.jp/kotaeru.php3?q=1933831
上記をふまえた上で・・・

シート1には日ごとの売上
シート2には月ごとの売上がシート1からのSUM関数で表示

そこでやりたいことはというと
前月分までの売上の月平均を出したいのです!

=AVERAGE(売上の合計,MONTH(NOW())-1)
というところまで考えてみました
「MONTH(NOW())-1」で前月までの数値になりますよね?
問題なのが売上の合計です
1月から12月それぞれの売上合計を
シート1の日別売上からSUMで出しています
月平均を出す合計は1月から12月を範囲指定した場合
現在の月も入ってしまいます
これを前月までに自動的に計算する方法はないでしょうか?
たとえば
今が4月だとして1月から3月までの売上合計・・・
といった具合です

現在ボクが考えられるのは
自動での指定は諦めて月初に前月までの合計をAVRAGE関数に指定する方法

これしかないでしょうか?

A 回答 (3件)

こんばんは^^



セル番地等全く分からないので適当ですが、
A1に 1/1
A366に 12/31 と、それぞれシリアル値であるとして
B列にそれぞれの日付に対応する売上
仮に今日が4/4だとして、そこまでの入力がある、
その時点で1月、2月、3月の売上の合計を先月までの月数(この場合は3)
で割って、一ヶ月の平均の売上を求めたい。
(大の月、小の月などは考えない)
そして、実際には、今日は1月31日なので、
「先月末まで」と言うのは去年のデータなので、計算の対象となる
データは未だ存在しない。

等々、想像を張り巡らせて。。。
任意のセルに
=SUMPRODUCT((MONTH(A1:A366)<MONTH(TODAY()))*(B1:B366))/(MONTH(TODAY())-1)
こんな感じでしょうか?
(最初に書いたとおりセル番地は全くの適当です)
ちなみに1月にこの式を使おうとしても #DIV/0! のエラーが出ます。
(必要であればエラー処理をして下さい)

この式は366日分のデータ(シート1)を参照して、ご質問に(多分)見合うデータ(先月までの月平均)を求める式です。
    • good
    • 0
この回答へのお礼

こんにちは

SUMPRODUCTというまた新しい関数の登場にもう・・・てんてこ舞いです

ありがとうございました

お礼日時:2006/02/04 16:33

範囲指定に関する関数で、「offset」というのがあります。


書式は「OFFSET(基準,行数,列数,高さ,幅)」で、
「offset(A4,1,2,1,6)」のような使い方をします。
この例では「セルA4から下に1、右に2ずれたセル(つまりセルC5)からはじまる、縦1×横6のセル範囲」
つまり「C5:C10」という範囲指定の意味を持ちます。

たとえば各月の計がセルA1から縦に並んでいるとすれば、
=AVERAGE(offset(A1, 0, 0, MONTH(NOW())-1, 1) )
といったところでしょうか。

(0か月分の平均は出せないので)1月のときは計算しないよう、if文も使った方がいいでしょうね。
=if(MONTH(NOW())=1, 0, AVERAGE(offset(A1, 0, 0, MONTH(NOW())-1, 1) ) )
    • good
    • 1
この回答へのお礼

こんにちは

OFFSETという関数があるなんて衝撃でした

こんな関数が隠されていたとは・・・
(って、知らなかっただけですけど・・・・)

教えていただきましてありがとうございました!

お礼日時:2006/02/04 16:29

 A  B


1  1月 5000
2  2月 5000
3  3月 5000
4  4月 5000
5  5月 5000
6  6月 5000
7  7月 5000
8  8月 5000
9  9月 5000
10 10月 
11 11月 
12 12月 
13
14 平均 ****

これがsheet2の内容だとして、B14に設定する関数は
=SUMIF(A1:A12,MONTH(NOW())-1,B1:B12)
ちなみにA列は1~12の数値を設定し、書式に「#"月"」を設定しています。
shimashimashimaさんの作成した表の形がはっきりと分からないので正確ではないかもしれませんが、参考にして下さい。
    • good
    • 0
この回答へのお礼

お礼が遅くなってすみません
ご回答ありがとうございました

SUMIFなんて関数があるんですねぇ
関数って面白いです
でも・・・・難しい

参考になりました!
がんばってみます!

お礼日時:2006/02/01 22:27

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!