- ベストアンサー
エクセルで平均値を出すとき
エクセルで平均を出す式を書きたいのですが、 ・平均を出したい対象データのセルが飛び飛びになっている。 ・1年(12ヶ月)の数値を入れるので、データの入ってない月の 空白セルは計算しない。 という設定にしたいのです。 AVARAGE等を使うと、飛び飛びのセルでなくセル範囲を選択しないと いけないように思うのですが、 上記2点に当てはまる方法を教えていただけないでしょうか。
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
A B C D E F 1 2 3 4 5 6 2 3 4 5 6 7 3 4 5 6 7 8 上記のような表があるときデータAとデータDの平均を求めるなら以下のような式のどれでもできます =AVERAGE(A2:A4,D2:D4) =SUM(A2:A4,D2:D4)/(COUNT(A2:A4)+COUNT(D2:D4)) =SUMPRODUCT((MOD(COLUMN(A2:F4),3)=1)*(A2:F4))/SUMPRODUCT(ISNUMBER(A2:F4)*(MOD(COLUMN(A2:F4),3)=1)*1) 表がもっと横方向に長いなら、3番目の式が汎用的かもしれません (列番号を3で割って「余りが1の列」の列の平均を求めています)
その他の回答 (4)
- imogasi
- ベストアンサー率27% (4737/17069)
質問の細部が判らない。 実例でも挙げて質問しないと。 当初の質問に比べお礼欄の補足が根本的に難しさを加えている。 補足で条件を小出しに明らかにするのは、読者、回答者にとって困る。回答が徒労になる。 A-F列にデータ数字があるのですね。 データ行は多数あるのですか?たぶんありそう。 >データのセルが飛び飛びになっている 飛び飛びの列のデータを使って平均を出したいらしい。 そのとびとびとは A とD列の平均 B とE列の平均 C とF列の平均 多分3組組み合わせのデータが何ペアーのもあるのでしょう。 行的には1行しかないのか? 規則的な3列離れた列の平均を考えるのでしょう。 質問によっては規則的に3れるごとで無い質問も考えられる。 A1:F10とか、多列にあるのか。 >1年(12ヶ月)の数値を入れるので、データの入ってない月の・・ 月はどの列で表しているのか、A-Fの第1行か。 >空白セルは計算しない。 意味はわかるが、データの実例を挙げてみてください。 ーー 私の質問の内容の推定は 1月ーーーー2月ーーーー3月ーーーー4月ーーー 男ー女ー計ー男ー女ー計ー男ー女ー計ー男ー女ー計ー 以下に男の各データ・女の各データ・合計の各データあり ーー 男だけの平均・女だけの平均などを出したいのですか? 質問では1月、2月に当たるデータしか無いが2組か? ーー セルの中には数字の入っていないセルもあり、それは件数に数えないよう質問者は希望。 そういうのなら、無理してAVERAGEをつかわずに、 単純に、各列について、縦にSUMで合計をだし、件数は縦にCOUNTAで出し、お互い2列分足して、合計を件数で割って平均を出してはどうですか。
お礼
ありがとうございます。質問の仕方が悪くてすみませんでした。 >男だけの平均・女だけの平均などを出したいのですか? はい。そのようなイメージです。AVARAGEで今回は行うことにしました。 質問したとおり、1年分ありました。1ヶ月のデータは3つありました。 平均値を出したいデータが100個あるわけではないので、AVARAGEで行うことにしました。
- hitokotonusi
- ベストアンサー率52% (571/1086)
データがA2, D2, G2にあるとして、この平均は =AVERAGE(A2;D2;G2) 入力時には、ctrlキーを押しながらマウスをクリックでできる。 1年12月分ということなので、これでなんとかなるだろうけど、 根本的にはシートの設計をやり直してほうがいいような・・・・
お礼
ありがとうございます。 ctrlキーを押しながらやるとできました。 普段エクセルをあまり使わないので、参考になりました。
- ryuujiok2205
- ベストアンサー率21% (233/1098)
ついでに、HELPに書式が示されています。ちょっと手を入れていますが > 書式:AVERAGE(数値1,数値2,...) > 数値1,数値2,... 平均を求める数値データを指定します。引数は 1 ~ 30 個まで指定できます。 範囲以外ダメとはどこにもかいてありません。こういう書き方もかまいません。 =AVERAGE(A1,A3:A5,A7)
お礼
ありがとうございます。 No.1の方と同様、ご提示いただいた方法が一番シンプルですね。
- n4330
- ベストアンサー率24% (215/872)
<1> 10 <2> <3> 12 <4> <5> 11 =average(A1:A5) とすれば未入力のセル(A2とA4)を無視した答え「11」となりますが、それで良いのでは無いかと思います。 何か問題でもありますか? Excel2000で確認しました。
お礼
ありがとうございます。 やってみまして、範囲でなくてもセル指定で大丈夫でした。
補足
すみません、私の書き方が悪かったようです。 飛び飛びになっている理由というのが、ほかの項目があるのです。 3つのデータが1セットになっており、横に並んでいる状態です。 │ データa データb データc │ データd データe データf │ (この場合、abcとdefが1セットのデータ群です。) 横に6つのデータが並んでいるとすると、 aとd bとe cとf の平均を取りたいです。説明が下手で申し訳ありません。
お礼
ありがとうございます。 上の2つの方法をやってみて、やはりシンプルにAVARAGEを使うのが いいのかなと思いました。