• ベストアンサー

ROUND関数…小数点第2位で切り上げ・切り捨て

お世話になります。 Excel2003を使用しています。 計算結果の数字を別セルに・・・97.759はROUNDUP(97.759,1)で97.8 同様に…103.103はROUNDUP(103.103,1)で103.2になりますが、本当は103.1としたいのです。 →小数点第2位が0の時は「切り捨て」1以上は「切り上げ」したいのです。 IF(「小数点第2位が0」,ROUNDDOWN(103.1,1),ROUNDUP(103.1,1)) で、いいかと思うのですが、「小数点第2位が0」の条件がうまくあらわせないため、完成できません。ROUNDを使ってもできそうだとは思うのですが、ちょっとだけ焦りも加わり、なかなか整理ができません。この考え方はあっているでしょうか?皆様のお力を貸していただければありがたいです。 ちなみに… セルの表示形式は「数値」 小数点以下の桁数は「1」 負の数の表示形式は「-1,234.0](今回、数値は負になることは有りません。)

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

  • ベストアンサー
  • masa_019
  • ベストアンサー率61% (121/197)
回答No.5

IF関数で分けなくてもあらかじめ数値に0.04を 加えておけばROUND関数だけで出来ると思います。 例えば、セルA1にの値を小数点以下第2位で0捨1入なら =ROUND(A1+0.04,1) で良いと思います。

lippi1977
質問者

お礼

一番シンプルな考えで、「なるほど!そうだよね!」と目からウロコでした。ROUND関数使えそうだな…というところまではいっても、その先の発想ができなくて…(@_@)こちらの式を使わせていただきます。 今回、私のまとまりのない考えがあふれ出る質問に適切に答えてくださって、本当にありがとうございました!一人で一方通行の考えで悩むより、三者三様の考え方が聞けて、皆さんの回答すべてが勉強になりました。全員にポイントを差し上げたいところですが、採用させていただいたNo.5様と最初に回答頂いたNo.1様にポイントをつけさせて頂きます。ほかの皆様にもこの場をかりてお礼申し上げます。

その他の回答 (4)

noname#254177
noname#254177
回答No.4

=IF(A1*10-INT(A1*10)<0.1,ROUNDDOWN(A1,1),ROUNDUP(A1,1)) B1にこの式を入力すれば、A1に入力した数値が目的の表示になります。

lippi1977
質問者

お礼

私の考え通りで、ほしい答えがでました。皆さんにいろいろな考え方を教えていただいて、今回、一番シンプルな方法で回答していただいたのを使わせてもうらうことにしました。勉強になりました。ありがとうございました!

  • bono223
  • ベストアンサー率31% (71/224)
回答No.3

ちょっと複雑になりますが、小数点第2位が0かどうかを判断するには、 1. 小数点第3位以下を切り捨てる。 2. 100倍する。 3. MOD関数を使い10で割った余りを出して、IF関数で0かどうかを判断させる。 という流れでできるように思います。もっとスマートな方法もあるかも知れませんが。

lippi1977
質問者

お礼

私の迷いをまとめてくださってありがとうございます。今回は一番シンプルな回答をしてくださった方がいて、そちらを使わせてもうらうことにしました。発想の転換ですよね…( ・o・)こちらの方法も勉強になりました。

  • Batistuta
  • ベストアンサー率28% (24/84)
回答No.2

=ROUNDUP(ROUNDDOWN(103.103,2),1) コレでいかがでしょうか?

lippi1977
質問者

お礼

「これもやってみたけど…」とよくよくみたら、自分の式は、桁数がちがっていたりして、正解がでなかった原因がわかりました(^_^;)一応、考え方は間違ってなかったとホッとしつつ…今回、一番シンプルな方法の回答を頂いたので、そちらを使わせてもうらうことにしました。回答ありがとうございました!

  • n-akina
  • ベストアンサー率31% (75/238)
回答No.1

こんにちは。  「小数点第2位が0」というのは100倍したものから10倍したものを小数点以下切り捨てて、10を掛けて引いたものが0を超えるかどうか判定すればよいと思います。  数値をAとすると、   A*100-int(A*10)*10>0  となります。 では。

lippi1977
質問者

お礼

ありがとうございます。参考にさせていただきます!

関連するQ&A

  • round 関数

    http://pcstory.blog40.fc2.com/blog-entry-172.htmlの round,rounddown,roundup 関数の求め方なのですが 元データを 表示形式 rounddown round roundupで処理しています。 具体的な求め方が分からない部分がありますので 教えてください。 表示形式部分は 568~775を選択し、右クリック、セルの書式設定 表示形式、数値、桁数を0にすると求められると思っています。 その下の round,rounddown,roundup 関数の具体的な求め方をお願いします。

  • ROUND関数と小数点以下桁上げ(桁下げ)ボタンについて

    いつもお世話になっています。素朴な疑問ですが教えてください。 任意の桁数で切り上げや切り捨て、あるいは四捨五入を行なう関数としてROUNDUP関数やROUNDDOWN関数、そしてROUND関数というものが存在しますが、このうち四捨五入を行なうROUNDUP関数は、整数表示にしたい場合やそれ以下の小数第○位の表示にしたい場合に使う限りにおいては書式設定ツールバーの「小数点以下桁上げ(桁下げ)」ボタンを使えば事足りるのではないでしょうか? あるいは使い分けをしなければならないケースも存在するのでしょうか? ご存知の方いらっしゃいましたらぜひ教えてください。宜しくお願いいたします <(__)>

  • EXCELでの小数点第1位の切り上げについて

    現状、二つの計算を行っております。 【1つ目】セルP11(数値21)÷P10(数値22)      21÷22=0.95454545・・・ 【2つ目】セルQ11(数値20.4)÷Q10(数値21.4)      20.4÷21.4=0.953271・・・  この2つの値それぞれ「セルP13」,「セルQ13」に算出し  パーセンテージ表示にするようにしたのですが、  1つ目(セルP13)が95%、2つ目(セルQ13)が96%に  なってしまいました。  小数点第3位で調整し、同じ95%、または96%にしたいと  考えております。  切り上げを行う場合『ROUNDUP』という関数があることは  分かったのですが、計算式と組み合わせた場合、どのような式に  なるのでしょうか?  申し訳ありませんが   ●四捨五入の場合,●切り上げの場合 での  式をお教え願います。  

  • エクセル .50以下で切り捨て、.51で切り上げの関数

    エクセルでround関数や、rounddown関数、roundup関数など、切り上げ・切捨ての関数が多数ありますが、 ・.50以下で切り捨て かつ ・.51以上で切り上げ という関数はあるのでしょうか。 if関数などを用いれば解決できるものでしょうか。 少々細かい質問だとは承知しております。 知恵を貸してください! 下に、私がやりたい切り上げ・切り下げ例を示します。この例を見ていただけると、単なる四捨五入でないことが分かっていただけるかと思います・・・。 例: 2415.50円→2415円 3500.51円→3501円 よろしくおねがいします。

  • 小数点切捨て

    =ROUNDDOWN(AI5,-3)*0.109/5の関数があるのですが、小数点以下を切捨てにしたいので教えてください。 AI5のセルには896,958の数字がありこれで計算すると19,533になってしまいますので、19,532にしたいので、よろしくお願いいたします。

  • 小数点切り上げって関数ですか?

    セルA2の数値の0.7掛けをB2に表示する場合は B2に=A2*0.7ですよね? で、小数点第1位を切り上げしたいのですが (ちょっと数学的にも分からないのですが、切り上げの場合って 例えば、39.1~39.9は40になって39.0は39のままですよね?) その場合、どういうふうにすればいいのでしょう?

  • excel関数で四捨五入以外の切り捨て、切り上げ

    excelの関数で四捨五入以外の切り捨て切り上げはどうすればいいでしょうか。 小数点以下を切り上げ・切り捨てしたいのですが、 .5までは切り捨てにしたいのです。.51だと切り上げ。 ROUNDだと.5から切り上げになりますよね。 よろしくお願いいたします。

  • 関数 小数点切り捨て

    源泉所得税の計算で、小数点以下切捨てが必要になります。 以下、自動的に切り上げとなってしまいます。 A1 15000 A2 A1*0.1021 結果が1,531.5で、切り上げ1532となってしまいます。 切り捨てで1531にするにはどうしたら良いでしょうか?

  • 「.50」は切り捨て、「.51」は切り上げにしたい

    エクセルです。 小数点以下「.50」は切り捨て、「.51」は切り上げにしたいのです。 50捨51入というようです。 例 1.50→1 1.51→2 IFかなと思ったのですが、わかりません。 四捨五入ではなく、小数点以下を判断して 切捨て、切り上げはできるのでしょうか?

  • エクセルで切捨て表示はどうしたら・・・

    セルの表示形式を通貨にして数値を入力し 数ヶ月の平均を出すと、小数点以下まで表示されます。桁数を指定すれば小数点以下は表示されませんが、指定した桁数以下は四捨五入されていますよね。 ここを切り捨て表示にしたい場合はどうすれば言いでしょうか?

専門家に質問してみよう