• ベストアンサー

関数式をエラー値を無視して計算するように直したい。

 当方素人です。よろしくお願いします。  関数式 =AVERAGE(D1:D100) と =INDEX(A:A,MATCH(LARGE(H:H,ROW(A1)),H:H,FALSE)) と いう関数式があります。この式ですとどちらもエラー表示(#VALUE!、#DIV/0!、#NAME?、#N/A、#REF!)が有る場合に”#DIV/0!”などと表示されてしまします。何とかエラー値が表示されている場合は除かれた計を出せるように、関数式を教えていただきたく。よろしくお願いします。

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

  • ベストアンサー
回答No.4

#2です。 =IF(D="","",AVERAGE(D1:D100)) =IF(A="","",INDEX(A:A,MATCH(LARGE(H:H,ROW(A1)),H:H,FALSE))) の DとかAの所に「F4キー」を押して「$」マークを付けてみてはいかがでしょう。

kei__2000
質問者

お礼

 回答ありがとうございます。$をつけてみたのですが、数式エラーがでてしまい、だめでした。

その他の回答 (3)

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

次の方法は如何でしょうか。 > =AVERAGE(D1:D100) ⇒ =IF(COUNT(D1:D100),AVERAGE(D1:D100),"") > =INDEX(A:A,MATCH(LARGE(H:H,ROW(A1)),H:H,FALSE)) ⇒ =IF(COUNT(H:H)>=ROW(A1),INDEX(A:A,MATCH(LARGE(H:H,ROW(A1)),H:H,0)),"")  因みにMATCH関数の第4引数は、0,1,-1の3種類の数値指定であるからFALSE(0として評価されるのですが)は使用しない方が良いと思います。

kei__2000
質問者

お礼

回答ありがとうございます。この間数式をそのまま貼り付けたところ、 #DIV/0!などと表示されました。なぜなのでしょうか??

回答No.2

エラーが出ないようにしたらいいんじゃないですか? =AVERAGE(D1:D100) の前に「IF関数」を使って =IF(D="","",AVERAGE(D1:D100)) ってやれば はじめのエラーが出ないと思いますし、 で、おなじように =INDEX(A:A,MATCH(LARGE(H:H,ROW(A1)),H:H,FALSE)) =IF(A="","",INDEX(A:A,MATCH(LARGE(H:H,ROW(A1)),H:H,FALSE))) ってこんな感じでしょうか?

kei__2000
質問者

お礼

 回答ありがとうございます。この間数式をそのまま貼り付けたところ、#NAME? などと表示されました。なぜなのでしょうか??

回答No.1

ISERROR か IF 関数を使用してはどうですか・

kei__2000
質問者

お礼

 回答ありがとうございます。 ISERROR か IF を使用することは解っているのですが、うまくいかず、質問しました。