• ベストアンサー

Excel 他の関数処理で文字列(数)を少なくする方法

Excel    A  B  C  D  E  F 1      1  2  3  4  5 2  あ  0  0  0  100 100 3  い  20  0  0  200 20 4  う  0  30  0  300 30 5  え  0  0  40  400 40 6  お  20 30  0  500 25 7  か  0  25 35  600 30 8  き  30 0  40  700 35 9  く  20 25 35  800 27 A2 ~ A9 は テスト名称 B2 ~ F9 は 数字 1,2,3 が 0 の場合は 4 の 数字を F2 に 出力 1 or 2 or 3 に 数字が ある場合 平均(小数点以下四捨五入) A2 あ F2=100 A3 い F3=20 A6 お F6=(20+30)/2 A9 く F7=(20+25+35)/3 F2 = ROUND(IF(AND(B2=0,C2=0,D2=0),E2,IF(AND(B2=0,C2=0),D2,IF(AND(B2=0,D2=0),C2,IF(AND(C2=0,D2=0),B2,IF(B2=0,(C2+D2)/2,IF(C2=0,(B2+D2)/2,IF(D2=0,(B2+C2)/2,(B2+C2+D2)/3))))))),0) 以下 F3 ~ F9 まで 同じ 関数処理 他の関数で文字列(数)を短くできますか?

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

  • ベストアンサー
  • taranko
  • ベストアンサー率21% (516/2403)
回答No.2

こんなのはいかがでしょうか? =ROUND(IF(B2+C2+D2=0,E2,(B2+C2+D2)/COUNTIF(B2:D2,"<>0")),0)

ititarou_j
質問者

お礼

ありがとうございます。

その他の回答 (1)

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

一例です。 F2に=IF(COUNTIF(B2:D2,0)=3,E2,ROUND(SUM(B2:D2)/COUNTIF(B2:D2,">0"),0))を入力、下方向にコピー

ititarou_j
質問者

お礼

ありがとうございます。

関連するQ&A