• ベストアンサー

エクセルの関数、数式を教えて下さい。

    A   B     10        20   ×      30    計   20   この表でB列の×を参照しA列の平均20を導き出すには どの様な関数、数式になるのでしょうか? よろしくお願いします。

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

  • ベストアンサー
  • HageoyaG
  • ベストアンサー率43% (171/395)
回答No.7

×が付いている行を除くんですね。 ご質問の例に限れば B4=SUMIF(B1:B3,"<>×",A1:A3)/(ROW(B4)-1-COUNTA(B1:B3)) でいけました。 行列の並び方によってはROW関数の結果から引く数値を変更する必要がありますが。

nikibibouzu
質問者

お礼

遅い時間まで、初心者におつき合いいただき有り難う ございました。正直、全く理解不可能ですが、コピペ で入力したところ・・・魔法のようです。明日にでもじっ くり関数の意味を調べてみます。

その他の回答 (7)

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

#4です。 A1に行挿入し計数と入れる。何でも項目名なら良い。 B1にマークと入れる。何でも項目名なら良い。 E1にA1をコピー。E2に<>を入れ、隣にXをコピー。 1   計数  マーク 2    10    3    20   ×  4    30    E1:E2に マーク <>X となります。 A5(答え)に =DAVERAGE(A1:B4,A1,E1:E2) A1:B4は見だしを含めたA列とB列のデータのある範囲。 A1は集計をする列。E1:E2は条件を入れている セル範囲です。

nikibibouzu
質問者

お礼

ほんとに遅くまで初心者におつき合い有り難うござい ます。ほんとうにいろいろな方法があるんですね。

  • ari_els
  • ベストアンサー率25% (111/439)
回答No.6

#1です。 すいません。ちょっと考慮不足でした。 これだと、×の行も分母にくる分としてカウントしてしまうので、その分を引く必要がありますね。 そうすると先ほどの =AVERAGE(C1:C3) は =C4/D4 に変更し、 C列の合計を出すために C4に =SUM(C1:C3) と設定します。 今度はD列を使用し =IF(B1="×",0,1) の式を入れ、これを行数分コピーします。 この列もC同様にD4で =SUM(D1:D3) と設定します。 (この式で、×がない行数がわかります。) C,D列を表示しないとすれば完成です。 この方法だとちょっと、美しくないかな・・・

nikibibouzu
質問者

お礼

重ね重ね、感謝です。

  • ari_els
  • ベストアンサー率25% (111/439)
回答No.5

#1です。 a,bとは別のエリアCを使った こんな方法でもできます。 まず、上の「計20」と表示する部分には =AVERAGE(C1:C3)  (3行の場合、それ以上あるときはc3の値を変えてください。) と設定。 Cの列で1行目に =IF(B1="×",0,A1) と設定。 これをしたの行にコピーする。 中をみると =IF(B2="×",0,A2) =IF(B3="×",0,A3) ・ ・ となります。 そうすると、B行で×を入れたもの以外の平均が 表示できるようになります。 C行を見せたくないのであれば、C行選択してから「書式」-「列」-「表示しない」とすれば見えなくなります。

nikibibouzu
質問者

お礼

有り難うございます。式を入れてみました。 答えは一つではなく、いろいろな方法があるのです ね。初心者に長い時間つき合っていただき感謝です。

nikibibouzu
質問者

補足

再度すみません。実は計算結果が13.333になるので す。C2に0が入っているの為3で割っているのですが C1、C3を2で割って答え20が欲しいのです。 どうした物でしょうか?

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

#3です。 xを除く平均なら、私の例でD2の「x」を、「<>x」にすると (2+5+9)/3=5.333・・になりました。 クライテリア(条件)「でない」は<>で良いと思うのですが。

nikibibouzu
質問者

補足

     A   B    C   D 1    10    2    20   ×  3    30    4    答  なにぶん、エクセルをさわりだして日が無く 教えていただいた式をコピーで入れようと考えており ます。お手数ですが、再度、答えの所のセルに20が入 るにはどの様な式になるのか、お願いします。

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

(データ)A1:B8 計数 マーク 2 3 x 5 3 2 6 x 9 4.5 とし D1:D2に、条件として マーク x と入れます。 A10セルに=DAVERAGE(A1:B8,A1,D1:D2) で上記のようにD10に4.5と出ます。 (3+6)/2=4.5 真中の3をxにすると4になりました。 (3+3+6)/3=4

nikibibouzu
質問者

補足

早々のお答え有り難うございます。 B列に×が入力されると20を無視し 自動でA列の10と30のみを 平均するようにしたいのです。質問の仕方が悪く ご迷惑をおかけしました。

  • HageoyaG
  • ベストアンサー率43% (171/395)
回答No.2

補足を。 A列4行目(か5行目)に表示される「計  20」の意味。 「×を参照」とありますが、「×」とそれぞれの「数値」と「平均値を求める関数」の因果関係。

nikibibouzu
質問者

補足

早々のお答え有り難うございます。 計は平均の誤りです。20は計算結果です。 B列が×の場合は計算に含めず A列の平均を出したいのです。

  • ari_els
  • ベストアンサー率25% (111/439)
回答No.1

ちょっとこの表の見方と意味がわかりません。 Aの最後の20だけが「計」となっていますが、これはどれ何処の合計値なんでしょうか? また、「Xを参照して」という意味もよくわかりません。 単に「XのところにA列の平均値を表示したい。」 ということではない?

nikibibouzu
質問者

補足

早々のお答え有り難うございます。ご指摘の通り 意味不明でご迷惑をおかけしました。計のところは 平均です。×の行の20を省いてA列の平均値を出した いのです。

関連するQ&A