- ベストアンサー
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の平均値を自動的に出す方法はありますか?
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
質問の例では =SUMPRODUCT((B1:B9<>"")*(A1:A9))/COUNTIF(B1:B9,"<>") でB列が空白でないA列の値の平均を求めることができます 範囲は変更してください
その他の回答 (3)
- izmlz
- ベストアンサー率55% (67/120)
=AVERAGE(A1:INDEX(A:A,COUNT(B:B))) でいかがでしょう?
お礼
教えていただいた、サイトを見させていただきます。 ありがとうございました。
- imogasi
- ベストアンサー率27% (4737/17069)
=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キーを同時押しする。
お礼
OFFSETという関数を初めて見ました。勉強になります。 2パターンも教えていただき、ありがとうございます。
- mu2011
- ベストアンサー率38% (1910/4994)
次の方法は如何でしょうか。 =AVERAGE(IF(B1:B65535<>"",A1:A65535)) 配列数式の為、入力完了時にshift+ctrl+enterキーを同時押下して下さい。
お礼
分かりやすい関数ですね。 エクセルに詳しくない者の業務で使用する為、配列数式ではないものを 使いたかったので今回は見合わせましたが、非常に分かりやすい関数なので、 私の業務で利用させていただこうと思います。 ありがとうございました。
お礼
配列数式を使わずに入力したかったので、こちらを採用させていただきました。 ありがとうございました。