• ベストアンサー

EXCELで隣のセルにデータがあるセルの平均を表示

EXCELで隣のセルにデータがあるセルの平均を表示をさせる方法を教えてください。 A B 1 1 2 2 3 3 4 4 5 5 6 6 7 8 9 Aにはデータが大量に入っています。 Bには1日1つずつデータが入っていきます。 毎日、AのAVERAGEの範囲を変えて入力しなおしていますが、 Bにデータがある行までのAの平均値を自動的に出す方法はありますか?

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

  • ベストアンサー
  • zap35
  • ベストアンサー率44% (1383/3079)
回答No.2

質問の例では  =SUMPRODUCT((B1:B9<>"")*(A1:A9))/COUNTIF(B1:B9,"<>") でB列が空白でないA列の値の平均を求めることができます 範囲は変更してください

kumicco
質問者

お礼

配列数式を使わずに入力したかったので、こちらを採用させていただきました。 ありがとうございました。

その他の回答 (3)

  • izmlz
  • ベストアンサー率55% (67/120)
回答No.4

=AVERAGE(A1:INDEX(A:A,COUNT(B:B))) でいかがでしょう?

参考URL:
http://www2.odn.ne.jp/excel/waza/function.html#SEC62
kumicco
質問者

お礼

教えていただいた、サイトを見させていただきます。 ありがとうございました。

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.3

=AVERAGE(OFFSET($B$2,0,0,COUNTA($B$2:$B$10000),1)) 質問者の状況が良くわからないが、上から詰めてB列が入力される場合です。 そうでなければ =SUMPRODUCT((B2:B1000<>"")*(B2:B1000))/COUNTA($B$2:$B$1000) 配列数式では =AVERAGE(IF(B2:B1000<>"",B2:B1000,"")) SHIFT,CTRL,ENTERキーを同時押しする。

kumicco
質問者

お礼

OFFSETという関数を初めて見ました。勉強になります。 2パターンも教えていただき、ありがとうございます。

  • mu2011
  • ベストアンサー率38% (1910/4994)
回答No.1

次の方法は如何でしょうか。 =AVERAGE(IF(B1:B65535<>"",A1:A65535)) 配列数式の為、入力完了時にshift+ctrl+enterキーを同時押下して下さい。

kumicco
質問者

お礼

分かりやすい関数ですね。 エクセルに詳しくない者の業務で使用する為、配列数式ではないものを 使いたかったので今回は見合わせましたが、非常に分かりやすい関数なので、 私の業務で利用させていただこうと思います。 ありがとうございました。

関連するQ&A

専門家に質問してみよう