• ベストアンサー

負の値の小数点以下切り捨て

エクセルの関数で、小数点以下を切り捨てると、  1.3→ 1  2.4→ 2  0.6→ 0  となります。当然です。 そして、負の値は、 -1.3→ -1 -2.4→ -2 -0.6→  0 これも、一見当然のように思えるのですが、 数直線の上で表示してみると、実は、ゼロを境として 左の整数に丸められる少数と、右の整数に丸められる 少数に分けられてしまい、ゼロ表示される領域が 他の整数で表示される領域の2倍の長さをもって しまいます。 数学的な美しさを維持するためには、  -0.6→ -1 であって欲しいのですが、これは私のわがままと 言うものでしょうか? それ以前に、私の書いたことの意味わかりますかね?

noname#14601
noname#14601

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

  • ベストアンサー
noname#59057
noname#59057
回答No.2

エクセルで確認してみましたが、 確かにrounddown( )を利用するとそうなりますね。 rounddown( )=「小数部分を見ないことにする」という意味付けのようです。 ZAKUMさんが期待する、「その値を超えない整数値を返す」関数はint( )になります。 ※数学では「ガウス記号」ってやつでしたっけ? 同じ値を引数に、rounddown( )とint( )関数を並べて比べてみるとわかると思います。

noname#14601
質問者

お礼

おー、感動ものです。 「エクセルってアホなんや」と笑いながら、 職場の先輩は、データーが負の値なら更に1を引いて 四捨五入してました。 「人知はコンピューターを超える」とうそぶいてましたが・・・やっぱり嘘だった。

その他の回答 (1)

  • ootora-A
  • ベストアンサー率28% (39/135)
回答No.1

rounddown関数を使えば、できると思います。

noname#14601
質問者

補足

それが、出来なかったのでした。

関連するQ&A

  • 「切り捨て」について

    小数点以下を切り捨てて整数にするとします。 当然のことながら、 0.1→0 0.5→0 1.4→1 1.5→1 2.1→2 2.9→2 という具合になりますよね。負の値も同じです。 -0.1→0(-0とは言いませんよね?多分。) -1.5→-1 -2.3→-2 -2.9→-2 このように、単に「表示桁を少なくする」だけですよね。 先ほど、もうひとつ切り捨て法があることを知りました。 正の値の場合は上記と同じですが、負の値の場合は、 -0.1→-1 -1.5→-2 -2.3→-3 -2.9→-3 というやり方です。 いってみれば、「より小さい整数値にする」ということでしょうか。 Excel関数でいうと、前者が「ROUNDDOWN」、後者が「INT」ですよね。 さて、質問が二つあります。 一つ目は、私は、一般社会生活上の「切り捨て」とは、Excelでいう「ROUNDDOWN」のことだと認識しているのですが、これでよいでしょうか? 二つ目は、Excelでいう「INT」に相当する「切り捨て」をする場面とは、どういう場合なのでしょうか?事例があれば教えてください。

  • 小数点の表示。

    少数点を含む計算結果を整数の時でも100.0 もしくは100.とか0.0と必ず小数点を表示させるにはどのようにすれば良いでしょうか?また、文字配列の中のN番目だけを取り出す関数は有りますか? 宜しくお願いします。

  • エクセルで小数点以下を計算しない方法

    エクセルで小数点以下を計算しない方法を教えてください。 表示では、整数なんですが、入っている数字は少数です。 その数字と掛け算して整数にしたいんですが?

  • 小数点以下を強引に表示させたい

    小数点以下を強引に表示させたいと考えています。 具体的には、「130」という値を「130.00」というように、小数点以下2桁まで表示させたいのです。3桁以下は切り捨てます。 これまでは、 $c = $a / $b; round($c, 2); という方法でやっていたのですが、$cがきっちり割り切れる値だと、どうも普通に小数点以下を表示させないようなのです。 例え「00」でも表示させたいのですが、そのような関数はありますでしょうか? よろしくお願いいたします。

    • ベストアンサー
    • PHP
  • 浮動小数点数型

    単精度浮動小数点型と倍精度浮動小数点数型、それぞれ値がとりうる範囲を教えてください。 単精度浮動小数点型 負の値は -3.4028235E+38 ~ -1.401298E-45、 正の値は 1.401298E-45 ~ 3.4028235E+38 の範囲の値 倍精度浮動小数点数型 負の値は -1.79769313486231570E+308 ~ -4.94065645841246544E-324、 正の値は 4.94065645841246544E-324 ~ 1.79769313486231570E+308 の範囲の値 とは記述してあるのですが、実際に小数1桁なら整数部はどのくらいの範囲の値がとれるのか、皆目わかりません。 どうか、わかりやすく教えてください。 よろしくお願い致します。

  • エクセル 小数点切捨てで整数表示にしたい 関数の使い方

    「小数点の切捨て」を実行し、整数で表示されるように関数を使いたいのですが、よくわかりません。 A1に「32*0.3」という数式を使って「9.6」という数字が表示されています。 この「9.6」を切り捨てて「9」と表示したいのですが、どの関数を使用し、どのように数値などを入力すればいいのかわかりません。 教えてください。

  • 小数点2ケタ以下切り捨てする関数式は??

    以下のような計算をエクセル上で行いたいと思います。 1-((A1+B1)/C1)  という計算式の答えを10倍して、かつ小数点2ケタ以下切り捨て をD1に自動で表示されるようにしたいと考えています。 D1に表示すべき関数式を教えてくれますでしょうか??

  • (MS-Excel)表示形式と小数点について。

    (MS-Excel)表示形式と小数点について。 関数結果や入力した値が、そのまま表示されることが前提です。 整数であれば小数点を表示しないで、小数以外があれば当然ですが小数点を表示させるには、どのように設定すれば良いでしょうか?

  • エクセルで小数点以下を切りすてる場合

    お世話になります、エクセルで以下の入力後、小数点以下を切り捨てて整数だけを表示する場合の関数(?)を教えて下さい。 =((B1*108000+D1*1800+F1*30+H1)-119095)/108000

  • Excelの小数点以下表示・非表示の方法について

    Excel2000において、小数点以下の表示方法について教えてください。 条件は以下の通りです。 (1)小数点以下が存在するときは、小数点以下第2位まで表示する。 ※小数点以下第3位の処理は、切捨てでも四捨五入でも何でも構いません。 (2)小数点以下が存在しないとき(整数のとき)は、少数点以下は非表示。※小数点も非表示に。 ・・・というものです。 ご存知の方がいらっしゃいましたら、何卒ご協力くださいますようお願いします!