【エクセルの使い方】


A1~F1のセルが、以下だったとします。

5,10,15,0,0,0,

「=AVERAGE(A1:F1)」のように平均値を出している場合、
「=AVERAGE(A1:F1)」は「5」になると思いますが、
この平均値の算出で「ゼロのセルは除外して計算」することは可能でしょうか?

上記の数値であれば、ゼロのセルは除外して
平均値が常に「10」と出るように式を設定したいと思っています。
やり方を教えてください。

※「=AVERAGE(A1:F1)」を「=AVERAGE(A1:C1)」に指定すればいいじゃん、って回答は無しでお願いします。
この部分は固定のまま、数値情報を自動的に読み取って計算させたいのです。

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:
  • 終了:2006/10/24 10:05:03
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

回答5件)

id:taknt No.1

回答回数13539ベストアンサー獲得回数1198

ポイント20pt

=SUM(A1:F1)/(COUNT(A1:F1)-COUNTIF(A1:F1,0))


http://www.officetanaka.net/excel/function/function/sumif.htm

id:kumaimizuki No.2

回答回数614ベストアンサー獲得回数31

ポイント20pt

http://q.hatena.ne.jp/list


範囲は必ずA1からF1だとすると

=SUM(A1:F1)/(COUNTA(A1:F1)-COUNTIF(A1:F1,0))

という式で実現可能です。

まず、列の合計を出します:SUM(A1:F1)

次に、平均ですので合計した数を求めます:(COUNTA(A1:F1)-COUNTIF(A1:F1,0))

ポイントは"COUNTIF(A1:F1,0)"です。

この式の場合、「0の数」を数えてくれますので、質問のパターンだと「3」が返ります。

前の"COUNTA(A1:F1)"は数値の入っている数ですので6が返ります。

この結果、6-3=3となり、0以外の数値の数になります。

これで問題ないと思いますよ。

id:Baku7770 No.3

回答回数2832ベストアンサー獲得回数181

ポイント20pt

=sum(A1:F1)/countif(A1:F1,"<>0")

で計算可能です。

MS Excelを使いこなす ―関数の利用 その3―

id:rikuzai No.4

回答回数1366ベストアンサー獲得回数141

ポイント20pt

色んな方法があると思いますが、

とりあえず関数の組み合わせでできるやり方を。


=SUM(A:A)/(COUNTA(A:A)-COUNTIF(A:A,0))


元々AVERAGEは全体数の合計を項目数で割ったものなので、

割る母数から0の項目数を引いたもので割るようにしました。

http://www.moug.net/

id:mikkun24 No.5

回答回数21ベストアンサー獲得回数0

ポイント20pt

まず、所定のセルに以下の式を記入します。

=AVERAGE(IF(A1:F1<>0,A1:F1,""))

そして、そのセルを編集モード(F2)を押し、以下のコマンドを

押下してください。

Ctrl + Shift + Enter キー

これは配列数式にするためのコマンドです。

URLはダミー

http://q.hatena.ne.jp/

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません