- 締切済み
エクセルの関数の質問です
_____A___________________B 1___80__________________62 2___50 3___60 4___80 5___40 のようにA列の平均をB列に表示させたいのですが、 ひとつ問題がありまして、A列が5行と決まっているわけではなく どんどん増えていきます。 なので、A列全体の中から数字の記載されている行を抜き出し、その平均を求めたいのですが、可能でしょうか?
- みんなの回答 (4)
- 専門家の回答
みんなの回答
- mitarashi
- ベストアンサー率59% (574/965)
対象範囲をきっちり決めたいなら、関数ではないですが、この様な方法もあります。A列にデータを足して行くにしたがって、名前の範囲が動的に変更されます。 ...............A.................B ..1.....見出し.........平均 ..2.............80..........56.7 ..3.............50................. ..4.............60................. ..5.............80................. ..6.............40................. ..7.............30................. B2の式=AVERAGE(dataArea) 名前dataAreaの参照範囲 =OFFSET(Sheet1!$A$2,0,0,COUNTA(Sheet1!$A$2:$A$200),1) ここでは、Microsoftの例に従って、最大A200までの範囲でデータの個数をカウントしていますが、A列全体をカウントして、見出し分だけ差し引く様な設定も可能です。 COUNTA(Sheet1!$A:$A)-1
- imogasi
- ベストアンサー率27% (4737/17069)
質問の途中からトーンが変わって >数字の記載されている行を抜・・・ と数字という言葉を入れているのが気がかり。 多分A列は数字か空白セルのがあたりまえと質問者は思っているのかもしれませんが、広く考えればソウではないので、質問の表現は良く考えて書くこと。 第1列には見出し等が入っているのがエクセルの基本的なことなので =AVERAGE(A:A)は普通使えないことが多かろう。 AVERAGE(A2:A10000)とかにすることになろう。 ーー 数字の行だけとなると、難しくなって 例えば =AVERAGE(IF(ISNUMBER(A2:A100),A2:A100,"")) と入れてSHIFT,CTRL,ENTERを同時押しする。配列数式。 これで出来ると思う。
- hotosys
- ベストアンサー率67% (97/143)
A列全体なら =AVERAGE(A:A)
- 中京区 桑原町(@l4330)
- ベストアンサー率22% (4373/19606)
値を入力するであろう範囲を予め決めて =AVERAGE(A1:A10000) の様に広く範囲指定すればよいです。