-PR-
解決
済み

#260の補足です。四捨五入の方法教えて下さい。

  • 困ってます
  • 質問No.5376
  • 閲覧数56
  • ありがとう数7
  • 気になる数0
  • 回答数2
  • コメント数0

お礼率 65% (1933/2937)

#5362 NO.#2にて、
IF(ISNUMBER(H2),IF(H2>1000,3000+6*700+6*(H2-1000),IF(H2>300,3000+7*(H2-300),"3000"))*65%,"")
 
の式を適用すれば、というご回答を頂きましたが、今度、この数式の結果の小数点以下を四捨五入させる必要が発生したため、
以下のように数式を変更しました。

=IF(ISNUMBER(H2),ROUND(IF(H2>1000,3000+6*700+6*(H2-1000),IF(H2>300,3000+7*(H2-300),"3000"))*65%,""),0)

あるいは、

=ROUND(IF(ISNUMBER(H2),IF(H2>1000,3000+6*700+6*(H2-1000),IF(H2>300,3000+7*(H2-300),"3000"))*65%,""),0)

すると四捨五入は出来るのですが、H2セルに数値を入れないと「#VALUE!」が再び出るようになりました。

どうすればいいでしょうか?
通報する
  • 回答数2
  • 気になる
    質問をブックマークします。
    マイページでまとめて確認できます。

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

  • 回答No.2
レベル7

ベストアンサー率 83% (15/18)

次の式を用いるとよいでしょう。

=IF(ISNUMBER(H2),ROUND(IF(H2>1000,3000+6*700+6*(H2-1000),IF(H2>300,3000+7*(H2-300),"3000"))*65%,0),"")


*補足*

"=IF(条件,真の処理,偽の処理)" なので、

条件 : ISNUMBER(H2)
真の処理 : ROUND(IF(H2>1000,3000+6*700+6*(H2-1000),IF(H2>300,3000+7*(H2-300),"3000"))*65%,0)
偽の処理 : ""

となるわけです。

四捨五入の必要があるのは ISNUMBER における真、
つまり数値であった場合の処理にのみ行うわけですね。

IF ワークシート関数をからめた式は大変読みづらいですが、
条件、真および偽の関係をしっかりと把握出来さえすれば、
意図した処理がきちんとできるようになると思いますよ。
お礼コメント
Youyou

お礼率 65% (1933/2937)

たびたびすみません。
本当にご丁寧なアドバイス、ありがとうございました。

今回の一連の件で本当に勉強になりました。

投稿日時 - 0000-00-00 00:00:00
-PR-
-PR-

その他の回答 (全1件)

  • 回答No.1

新しいスレッドを立ち上げる際には、せめて前回の 質問のURLを載せておいてください。トップページから リンクがあるときはいいですが、後から見る人が 探しにくいので、質問文ももう少し工夫した方が いいですよ。 回答としては、セルにエラーを表示させないという 質問が過去にでていますので、参考にしてください。 キーワード「セル」で検索するだけで、発掘できる ので、次回からは検索も活用してくだ ...続きを読む
新しいスレッドを立ち上げる際には、せめて前回の
質問のURLを載せておいてください。トップページから
リンクがあるときはいいですが、後から見る人が
探しにくいので、質問文ももう少し工夫した方が
いいですよ。

回答としては、セルにエラーを表示させないという
質問が過去にでていますので、参考にしてください。
キーワード「セル」で検索するだけで、発掘できる
ので、次回からは検索も活用してください。

ではでは☆


このQ&Aで解決しましたか?
関連するQ&A
-PR-
-PR-
このやり方知ってる!同じこと困ったことある。経験を教えて!
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する
-PR-
-PR-
-PR-

特集


関連するQ&A

-PR-

ピックアップ

-PR-
ページ先頭へ