• ベストアンサー

エクセルの切捨て

A1のセルに数値があり、A2にA1*2.11のとき小数点以下が○○.5以下ならば切捨て、○○.51以上ならば繰り上げとしたいのですが、どのように書けばよろしいでしょうか。 足りない説明があれば補足しますので、どうぞ宜しくお願い致します。

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

  • ベストアンサー
  • notnot
  • ベストアンサー率47% (4900/10359)
回答No.5

五捨五超入ということですよね。 正の数の範囲だけで良いなら、 =ROUNDUP(A1*2.11+0.5,0)-1 負の数の場合も考慮するとなると、-0.5を0にしたいか-1にしたいか、そこからですね。

p-ink
質問者

お礼

そうです、五捨五超入ってことです! そんな風にうまく書けたらよかったです。 マイナスの計算はない物なので大丈夫です。 ありがとうございました。

その他の回答 (7)

  • kagakusuki
  • ベストアンサー率51% (2610/5101)
回答No.8

 回答No.4です。  済みません、2.11を掛けるのを忘れていました。 =ROUNDUP($A1*2.11-0.5,0) =INT(CEILING($A1*2.11,0.5)) =ROUNDDOWN(CEILING($A1*2.11,0.5),0)

p-ink
質問者

お礼

ありがとうございます!

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.7

質問の内容の表現が不完全で、内容がよくわからない。 たとえば結果は、整数でよいのか、小数点第何位まで出したいのか、明記してないのは不十分ではないか。 例データでもあげて、(節目節目の5セル以上ぐらいは必要)説明するか、文章でうまく表現しないとわからない。 Excelは、標準では同行の横列に、関数式の結果を出すのが多い(例A1->B1)。 A1ー>A2の例を挙げているが、(こうしなければならないケースももちろんあるが)、私の経験では、エクセルの経験が少ない人が質問する場合が多い。 ROUND、RoundUP、RoundDownあたりの関数の解説を本やWEBで読んでやってみて、それから質問すべきだとおもう。 「結果を整数で出す」なら、=IF((A1-INT(A1))<=0.5,INT(A1),INT(A1)+1) なんかどうですか。これなら、この式で何をやっているか、判るだろう。テストデータ数は100ぐらいで 不安だが。 ただし、エクセルの「実数」(小数点付の数)の扱い(考え方)(誤差など)は、むつかしい(奥が深い)。整数と違って、セルに今見えている数と実際の数と違いがある合がおこりうるから。 ーー またエクセル関数の質問コーナーは別にあるはず。ここはエクセルVBAなどのコーナー。

p-ink
質問者

お礼

質問が分かりづらく本当にすみません。 ご提案の式を試してみます。 ありがとうございました!

  • bunjii
  • ベストアンサー率43% (3589/8249)
回答No.6

端数が0.5以下と0.5未満の丸め方を知りたいのでしょうか? 0.5以下は良いとしても0.51以上となると0.501~0.509はどうしますか? 四捨五入は端数の5未満を切り捨てて、5以上を切り上げます。 Excelの関数ではROUNDを使います。 質問の内容では次の数式で良いと思います。 A2=ROUND(A1*2.11-MOD(A1*2.11,0.1),0) 五捨六入相当になります。

p-ink
質問者

お礼

そうですよね、小数点第2位までのことしか浮かんでませんでした。 MODというのもあるんですね、調べてみます! ありがとうございました。

  • kagakusuki
  • ベストアンサー率51% (2610/5101)
回答No.4

>小数点以下が○○.5以下ならば切捨て、○○.51以上ならば繰り上げ との事ですが、その切り捨てや繰上げは小数点以下第一位の桁で行えば宜しいのでしょうか?  例えばA1セルの値が1.5の場合はA2セルの値は1、A1セルの値が1.51の場合はA2セルの値は2とすれば宜しいのでしょうか?  それとも、その切り捨てや繰上げは小数点以下第二位の桁で行えば宜しいのでしょうか?  例えばA1セルの値が1.5の場合はA2セルの値は1.5、A1セルの値が1.51の場合はA2セルの値は1.6とすれば宜しいのでしょうか?  又、A1セルの値が-1.49の場合、-1.5の場合、-1.51の場合には、それぞれどのような値を返す様にすれば宜しいのでしょうか?  取り敢えずの話として、例えばA1セルの値が1.5の場合はA2セルの値は1、A1セルの値が1.51の場合はA2セルの値は2とする関数を3種類だけ御伝え致しますが、これら3種類の関数はA1セルの値がマイナスの場合には、それぞれ得られる結果が異なりますので、どれが良いのか御確認願います。 =ROUNDUP($A1-0.5,0) =INT(CEILING($A1,0.5)) =ROUNDDOWN(CEILING($A1,0.5),0)

p-ink
質問者

お礼

ありがとうございます! 3つとも試してみます。

  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.3

ご相談の書き間違いでは無くただの四捨五入じゃない計算ということなら >○○.5以下ならば切捨て、○○.51以上ならば繰り上げとしたい この前提から、小数点以下3桁より下の数字(たとえば0.509のように)は「無い」ことにします。 ただしエクセルの計算間違いにより、見た目○○.51であっても実数は○○.509999のようになっていることは非常にままあるので、注意が必要です。 計算例: =ROUND(ROUND(A1*2.11,2)-0.01,0)

p-ink
質問者

お礼

ありがとうございます。 やってみます!

  • dogs_cats
  • ベストアンサー率38% (278/717)
回答No.2

=ROUND(A1*2.11,0)

  • kamikami30
  • ベストアンサー率24% (812/3335)
回答No.1

IF ROUNDDOWN ROUNDUP 入力すれば意味まで補完されるので分かるでしょう。 Excel入門サイトにも出てくるような超基本です。 自分でも調べて確認すると良いです。

p-ink
質問者

お礼

調べてみました。 混乱しそうですが練習して使いこなせるように頑張ります。 ありがとうございました!

関連するQ&A

専門家に質問してみよう