- ベストアンサー
エクセルで計算された数値をさらに切り上げたい場合
エクセルで困っています。 すでに、INTとMODを使い、整数部と小数点以下それぞれに別々の数字をかけ、その和を求めたセルがあります。 ですが、この中で小数点部分が9のみ切り上げたいのです。 9以外は切り捨てです。たとえば、 =INT(A1)*100+MOD(A1,1)*15.3 この式の答えの小数点第1位部分が9なら切り上げる、8以下なら切り捨てたいのです。 前に色々関数をつけてみて思いつく限り試しましたがエラーの嵐です。 なにかコツがあるのでしょうか? 全く分からず困っております。お分かりになる方、どうかよろしくお願い致します。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
>この中で小数点部分が9のみ切り上げたいのです。 0.1を足して切り捨てれば出来ます。 =TRUNC(INT(A1)*100+MOD(A1,1)*15.3+0.1) または =ROUNDDOWN(INT(A1)*100+MOD(A1,1)*15.3+0.1,0)
その他の回答 (2)
- kagakusuki
- ベストアンサー率51% (2610/5101)
次の様な関数とすれば良いと思います。 =ROUNDDOWN(0.1+INT(A1)*100+MOD(A1,1)*15.3,0)
お礼
回答ありがとうございました。 そうだったのか~とただひたすら感動しています。 今までの苦労はなんだったのかと・・・(^_^;) まじめにエクセル勉強しようと思いました。 ありがとうございました!
- keithin
- ベストアンサー率66% (5278/7941)
「切り上げる」とは15.9なら16に切り上げて16*100という計算結果を出せばよい, 15.8なら切り下げて15*100という計算結果を出せばよい, という意味ですか? それとも何か別の考えがあるのでしょうか。 「言葉」で説明するよりも,もっと具体的に「こういう計算結果が欲しい」とアナタの考える答えをキチンと示すと,もうちょっとヒトに理解して貰えるんじゃないかなと思います。 で。ご説明用に汎用で式を書いてみると =INT(A1)*100+IF(round(MOD(A1,1),1)=0.9,謎の切り上げ計算式,正体不明の切り下げ計算式) といった具合で。 #説明 MOD関数でそういう使い方をすると,浮動小数点誤差によって「0.9に見えても実は0.89999999999152」とかそういった結果が現れる場合が非常にしばしば多いので,気をつけないといけません。
お礼
回答ありがとうございました。 自分でも混乱していまして、わかりにくい表現失礼致しました。 基本的に小数点以下が3の倍数にしかならない事が前提でしたので、9のみ切り上げたいと思っておりました。 色々な方法があるのだと驚いています。 ありがとうございました。
お礼
回答ありがとうございました。 目からウロコでした! そうだったのか~と驚きです! 謎が解けました! 本当にありがとうございました。