- ベストアンサー
エクセルで2捨3入をしたいのですが・・・
仕事でエクセルを使っています。 たとえば答えが1.15なら1.0を返し、1.30や1.65なら1.5を、1.80なら2.0を返す、といったような、2捨3入の計算式にするにはどうしたらいいのでしょうか?
- みんなの回答 (7)
- 専門家の回答
質問者が選んだベストアンサー
すみません。ふたたび。 ちゃんと質問内容を理解していませんでした。 =ROUNDDOWN((A1+0.2)*2,0)/2 もしくは、 =INT((A1+0.2)*2)/2 でいいでしょうか。
その他の回答 (6)
- tadanokuma
- ベストアンサー率36% (128/348)
#6のものです。ごめんなさい。この部分違っておりました。失礼しました。 (誤り)3<x<8のとき5を帰し、8<xのとき10を帰すようにします。 (正解)3≦x<8のとき5を帰し、8≦xのとき10を帰すようにします。
- tadanokuma
- ベストアンサー率36% (128/348)
こんにちは、 単純に考えるとすんなりできませんね。私なりのロジックです。 1.得られた結果を2箇所の別のセルに置き(ワークを作る)。 一方は、その値を10倍し、小数点以下を切り捨てます。使う関数はご存知ですね。 1.15->11、1.3->13、1.8->18ですね。----(A) もう一方は、小数点を切り捨ててから10倍します。 1.15->10、1.3->10、1.8->10ですね。----(B) 2.(A)で得られた数値の右1桁(Right関数)をIF文で判定して結果を求めます。 今の場合、x<3のとき0を帰し、3<x<8のとき5を帰し、8<xのとき10を帰すようにします。 3.2.で得られた数値と、(B)で得られた数値を足し算します。その結果を10で割ってください。 以上で、求められます。セルの書式に注意してください。
お礼
なんだか難しそうですが、このやりかたでも試してみようと思います。 ありがとうございました。
- h_sakaki
- ベストアンサー率18% (175/970)
一般的に、特定の値で整数にするなら、2捨3入等の場合は INT(値+0.7)で行いますが、 今回は0.5刻みで欲しいようなので、 二倍して四捨五入し、二で割ると言うのが正解だと思います。 =FIX(値*2)/2 です。(値は参照されるセルにして下さい)
お礼
ありがとうございます。 やってみます。
- ubonoti01
- ベストアンサー率20% (43/211)
2倍して4捨5入し、その答えを2で割ってはどうでしょう。 ・1.15→2.30→2.00→1.00 ・1.30→2.60→3.00→1.50 ・1.65→3.30→3.00→1.50 ・1.80→3.60→4.00→2.00
お礼
ありがとうございます。なんとかなるもんですね!
- punchan_jp
- ベストアンサー率55% (155/280)
2倍して、4捨5入して、半分にしたらどうでしょうか? 正確には、2.4捨2.5入くらいになりますけど。
お礼
なるほど!目からウロコでした。 ありがとうございます。
- haru-p
- ベストアンサー率28% (34/119)
こんにちは。 たんに 0.2 を加えて四捨五入するといった手法では駄目でしょうか? A1 が対象セルとして =ROUND(A1+0.2,0) こんな感じです。 どうでしょうか? その他 ROUNDDOWN や ROUNDUP でも代用可能です。
補足
質問の仕方が悪かったかもしれません。 このやり方だと答えが1.3だった場合”2”になってしまいますよね。 答えが1.3だったら”1.5”にしたいのです。 つまり、0.5単位で切り上げ切り捨てを行いたい場合、どうすればよいでしょうか? どうかよろしくお願いします。
お礼
再びの回答、ありがとうございました。 やってみました。できました! いつも同じところで悩んでいたので助かりました!