

エクセル2007で%の平均値を求めたいのですが、うまくできません。
先日下記の様な質問をさせて頂いたのですが、もう少し質問したいことがあったのに間違えて解決済にしてしまいました。
どなたか分かる方がいらっしゃいましたら教えてください。
A B C D E F G H
1 目標 6.44% 4.50% 3.77% 5.15% 2.66% 2.79% 式を入れたいセル
2 実績 5.07% 6.00% 4.85% A2~G2の平均値
A1~G1は、=(F3/G6)みたいな数式が入っていて、%で表示されています。
B2~G2は、最初は空欄で毎月B、C、D、E、Fと一つずつ%が入っていきます。
上記で、H1のセルに、下記の様な結果を表示できる式を入れたいのですが、何かいい方法はないでしょうか?
・B2~G2が空白の時はB1~G1の平均値
・B2にだけ数字が入っていてC2~G2が空白の時はB1の数字
・B2~C2に数字が入っていてD2~G2が空白の時はB1~C1の平均値
・B2~D2に数字が入っていてE2~G2が空白の時はB1~D1の平均値
・B2~E2に数字が入っていてF2~G2が空白の時はB1~E1の平均値
・B2~F2に数字が入っていてG2だけが空白の時はB1~F1の平均値
・B2~G2全てに数字が入っている時はB1~G1の平均値
という質問に対して、
[H1]=AVERAGE(B1:INDEX(B1:G1,COUNT(B2:G2)))
という式を教えて頂いたところ、うまくいきました。
半期分はこれでOKだったのですが、1年分だとHに半期の平均のセルが入るため、うまく表示できません。
・B~Gが前期、Hが前期の平均
・I~Nが後期、Oが後期の平均
さらに、Pに全期の平均を入れたい場合はどのようにしたらよいのでしょうか?
[P1]=AVERAGE(B1:INDEX(B1:N1,COUNT(B2:G2,I2:N2)))
にすると、Hのセルも入ってしまうため、後期に数字が入ると平均値の表示が1つずつずれてしまいます。
何回も申し訳ないのですが、どうぞよろしくお願いいたします。
No.1ベストアンサー
- 回答日時:
>=(F3/G6)みたいな数式が...
その『%』ってどういう意味合いのものなのでしょうか。
結果としての『%』の単純な平均値を求めるだけでいいのでしょうか、
...って事はおいといて、2007なら
[H1] =AVERAGEIF(B2:G2,"<>",B1:G1)
[O1] =AVERAGEIF(I2:N2,"<>",I1:N1)
で良いんじゃないかとも思いますけども。
[H1] =AVERAGE(B1:INDEX(B1:G1,COUNT(B2:G2)))
だとB2:G2未入力でB1:G1平均が表示されてしまいますが、それでいいですか?
未入力なら素直に #DIV/0! エラー表示させといてもいいんじゃないかと思います。
って事もおいといて、[H1,O1]に平均値がはいっているので、
[P1] =(H1*COUNT(B2:G2)+O1*COUNT(I2:N2))/(COUNT(B2:G2,I2:N2))
とか。
でもやっぱりAVERAGEIF使って
=AVERAGEIF(B2:N2,"<>",B1:N1)
でいいような気もします。(H2未入力なら)
No.5
- 回答日時:
=IF(COUNT(B2:G2,I2:N2)=0,AVERAGE(B1:G1,I1:N1),AVERAGE(B2:G2,I2:N2))
これだけではダメですか?
ちなみに、半期の平均も、ちょっと難しいINDEX関数を使わなくても、
=IF(COUNT(B2:G2)=0,AVERAGE(B1:G1),AVERAGE(B2:G2))
=IF(COUNT(I2:N2)=0,AVERAGE(I1:N1),AVERAGE(I2:N2))
これだけでいけると思いますが。
AVERAGE関数は、0だとカウントしますが、空欄はカウントしませんよ。
ご回答ありがとうございました。
お礼が遅くなりまして申し訳ございません。
せっかく教えていただいたのですが、今回は他の方法でやらせていただきました。
本当にありがとうございました。
No.4
- 回答日時:
>=(F3/G6)みたいな数式が入っていて
肝心な説明が「みたいな」では、非常に困ります。
「分母が同じなら」と言う条件下でならば、AVERAGE関数を使っても良いでしょう。
しかし、百分率の平均を取る事自体が、意味の無いことだと考えます。
H1セル
=IF(B2="",B1,SUM(F3:INDEX(F3:K3,COUNT(B2:G2))/SUM(G6:INDEX(G6:L6,COUNT(B2:G2)))))
O1セル(H1セルをコピペ)
=IF(I2="",I1,SUM(M3:INDEX(M3:R3,COUNT(I2:N2))/SUM(N6:INDEX(N6:S6,COUNT(I2:N2)))))
P1セル(B2=""とI2=""を考慮に入れていません)
=SUM(F3:INDEX(F3:K3,COUNT(B2:G2)),M3:INDEX(M3:R3,COUNT(I2:N2)))/
SUM(G6:INDEX(G6:L6,COUNT(B2:G2)),N6:INDEX(N6:S6,COUNT(I2:N2)))

No.2
- 回答日時:
せっかく回答を出だしてもらっているのですが、別の方向から見直してみます。
ひょっとしてですが、別の行の合計を出している行がありませんか?
仮に
A B C D E F G H
1 月 4 5 6 7 8 9 上期
2 目標金額 合計金額(SUM関数)
3 実績金額 合計金額(SUM関数)
4 目標 6.44% 4.50% 3.77% 5.15% 2.66% 2.79% 式を入れたいセル
5 実績 5.07% 6.00% 4.85% A2~G2の平均値
とかになっているのでは
ここで算数になりますが、H5の平均の値は H2の実績の合計÷入力してあるセルの数(COUNT(A2:G2))で得られますよね。
同様に、下期もOKでしょう。
通期の合計金額もP列にSUM関数で表示しておきます。
通期の平均は、通期の合計÷A2:G2とI2:N2の入力してあるセルの数
=P2/(COUNT(A2:G2)+COUNT(I2:N2)) といった感じで求められませんか。
既に合計の値を計算しているセルがあれば、そのセルの結果を利用します。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
【画像あり】オートフィルター...
-
エクセルでCSVを編集するとき、...
-
【関数】=EXACT(a1,b1) a1とb1...
-
エクセル 連番が途切れていると...
-
IF関数で空欄("")の時、Null...
-
エクセルで数式の入ったセルの...
-
関数TRANSPOSEで空白セルを0に...
-
エクセルで空白を無視して一番...
-
エクセルで入力すると隣のセル...
-
Excel > ピボットテーブル「(空...
-
「データ要素を線で結ぶ」がチ...
-
Excelで、入力文字の後に自動で...
-
マクロボタンを押すたびに違う...
-
IF関数について
-
VBAで、行数が変化する表の合計...
-
オートフィルで空欄に0が出て...
-
エクセルのIF関数で、隣のセル...
-
Excel:関数が入っているセルに...
-
エクセルで上の行の値を自動的...
-
エクセルで、「複数のセルの中...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
【画像あり】オートフィルター...
-
IF関数で空欄("")の時、Null...
-
エクセルでCSVを編集するとき、...
-
Excel > ピボットテーブル「(空...
-
エクセル 連番が途切れていると...
-
「データ要素を線で結ぶ」がチ...
-
エクセルで入力すると隣のセル...
-
ピボットテーブルで空白セルの...
-
Excel:関数が入っているセルに...
-
Excelで、入力文字の後に自動で...
-
形式貼り付けの「空白を無視す...
-
数式による空白を無視して最終...
-
空白セル内の数式を残したまま...
-
excel2010 空白セルにのみ貼り...
-
関数TRANSPOSEで空白セルを0に...
-
【Excel】 csvの作成時、空白セ...
-
エクセルのIF関数で、隣のセル...
-
エクセル セルのコピー元が空...
-
エクセルで、「複数のセルの中...
-
エクセルで上の行の値を自動的...
おすすめ情報