人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

EXCEL エクセルでの質問です。
=IF(AND(H9<>"",N9<>""),(H9*O9)+(N9*O9),IF(B9="",O9*N9,H9*O9))
↑のように式を入れると#VALUEとエラーになります。

回避出来る式をズバリ教えて下さい。

●質問者: hogehoho
●カテゴリ:コンピュータ 学習・教育
○ 状態 :終了
└ 回答数 : 2/2件

▽最新の回答へ

1 ● cx20
●50ポイント

#VALUE!

のエラーは文字列を数値に変換できなかった場合に表示されるエラーです。
例えば、

="xxx"*123

と、するとエラーになります。
"xxx" の文字を「0」として扱っても構わないのであれば、N関数を用いると、エラーを回避できます。

=N("xxx")*123

今回のケースであれば、H9,N9,O9 に数値ととして認識されない文字が入るケースがあるようなので、それぞれ、N(H9),N(N9),N(O9) と、することでエラーを回避できるかと思います。

=IF(AND(H9<>"",N9<>""),(N(H9)*N(O9))+(N(N9)*N(O9)),IF(B9="",N(O9)*N(N9),N(H9)*N(O9)))

参考情報

■ ExcelのVALUE関数の使い方
http://www.excel-list.com/n.html


2 ● きゃづみぃ
●50ポイント

O9*N9
H9*O9

それぞれ数値だったら エラーにはなりません。
そこに 文字が入ってるからエラーとなるのです。


たとえば O9にz、N9にwとかはいってたら 計算できませんね。

回避するには そこに 数値以外は 入れないようにするしかないです。
だって 文字が入ってたら 正しい計算が出来ないでしょ。

エラーにならないようにしても 結果が間違ってたら使い物にならないですよ。

関連質問

●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ