• ベストアンサー

VBA:小数点以下の数字を取得できる関数は?

VBAで、小数点以下の数字を取得できる関数または、それに必要な関数を教えていただけたらと思います。たとえば、 1.325…から0.325  3.256224から0.256224 5.23549から0.23549を取得。 といった感じです。(取得する値はdouleで桁数は不定です。)よろしくお願いいたします。

  • e-l
  • お礼率45% (158/349)

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

  • ベストアンサー
  • todo36
  • ベストアンサー率58% (728/1234)
回答No.1

n - Fix(n)

その他の回答 (3)

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

下記をやってください。「FIX」の方に分があるのでは。マイナスの数の場合に差が出る。 (例データ)A1:A5 1.23456 2.34 -3.456 -32.12 -0.00012 (コード) Sub test05() For i = 1 To 5 Cells(i, "B") = Cells(i, "A") - Fix(Cells(i, "A")) Cells(i, "C") = Cells(i, "A") - Int(Cells(i, "A")) Next i End Sub (結果) 1.23456 0.2345600000 0.23456 2.34 0.34 0.34 -3.456 -0.456 0.544 -32.12 -0.12 0.88 -0.00012 -0.00012 0.99988

  • mfuku
  • ベストアンサー率50% (173/345)
回答No.3

#2の者です。 見ればわかるとは思いますが、先ほどの回答、訂正します。 (誤)Dim a As String (正)Dim a As Double

  • mfuku
  • ベストアンサー率50% (173/345)
回答No.2

こんな感じでOKです。 Dim a As String a = 1.325 MsgBox a - Int(a)

関連するQ&A

  • 小数点以下桁数が最大の値に小数点以下桁数を揃えるにはどうしてますか

    小数点以下桁数が最大の値に小数点以下桁数を揃えるにはどうしてますか 例えばSELECT文で取ってきた値が、 0.05と0.1だった場合は、0.1を0.10としたいです。 0.5と2だった場合は、2を2.0としたいです。 1と2だった場合は、1も2も、そのままとしたいです。

    • ベストアンサー
    • MySQL
  • 【PHP】printf()関数の小数点以下の扱い方

    printf()関数で以下のような記述をしました。 関数の引数を計算すると単純で 5 × (1 - 0.35) で結果は 3.25 となります。 これを$%.1f によって出力するため小数点以下は1桁です。 桁数を指定した場合、指定し桁数以下は「四捨五入」されると思っていました。 よって、自分では Price: 3.3 と出力されると考えていましたが 実際には Price: 3.2 と表示されます。 ちなみに 3.25 を round() 関数で使うと 3.3 と返ってきます。 printf()関数で小数点以下の桁数をしてした場合、四捨五入、切り上げ、切り捨て いずれでもない値が返ってくるのでしょうか? このような小数点以下の桁数を扱う方法はPHPの他の関数でも使われるのでしょうか? この方法の呼称というか名称というのはあるのでしょうか? 初学者です。分かりやすく教えていただければ幸いです。 よろしくお願いいたします。! <表示結果> Price: $3.2 3.3 <?php $price = 5; $off = 0.35; printf("Price: $%.1f", $price * (1 - $off)); echo "<br>\n"; echo "<br>\n"; echo round(3.25, 1); ?>

    • ベストアンサー
    • PHP
  • Accessで小数点以下の桁数を・・?

    教えてください。 Accessで小数点以下の桁数を表示したいのですが、プロパティで小数点以下の桁数を表示することができるのですが、実際に入力すると値が四捨五入されてしまい小数点以下の桁数を入力することができません。どうしたらよいのでしょうか?

  • 関数で小数点以下を抽出したい

    小数点以下の数字のあるデータで、小数点以下の物だけを抽出する関数を教えてください。

  • 小数点付の数字の桁数を揃える

    >10 を $suu=sprintf("%03d",$suu); このようにして3桁に揃えると >010 ですが、小数ありの数字を上の方法で桁数を揃えると >10.5 だった場合、小数点以下が無視され、 >010 と表示されます。それを、 >010.5 のように小数つきで桁数を揃えたいのですが、 どうすればいいのでしょうか? よろしくお願いします。

    • ベストアンサー
    • Perl
  • 小数点以下の桁数

    Excelの関数で指定したセルの小数点以下の桁数を返すようなものはありますか?例えば、「1.12345」だったら「5」と返すような・・・。

  • 小数点以下の数字の桁数表示について

    VB6.0で小数点以下の数値が0の場合でも指定した桁数で0も表示するにはどのようにしたらよいですか? 例えば、四捨五入のROUND(0.195000,4)のとき返ってくる数値が「0.195」となり最後の0が表示されません。(以下は4桁表示したいのに) (小数点以下第5位が5なら切り上げで最後に1が表示されますが) エクセルだとセルの書式設定で表示桁数を設定するだけだったのですが。 FIXED関数、TEXT関数はVB6.0では使えないのですよね? VB6.0に詳しい方よろしくお願いします。お手数です。

  • 小数点以下の数字の出現

    お尋ね致します。エクセル2013を使っています。 次の関数を作りました。 =IF(Q266="b",V266-U266,U266-V266)*100 すると、U,V列には小数点以下3桁までの数字しか入力していないのですが、この関数の欄には、小数点14桁くらいまでの変な数字が出現してしまいます。例えば、5のはずが4.99999999999875とかになります。 別の列にこの答えが5なら...というような関数を入れたのに、TRUE FALSEが正しく返って来ないので気が付きました。ここで作業が止まってしまい、困っています。 これはなぜなんでしょうか? 説明、伝わってますでしょうか? 補足が必要でしたらご教示ください。

  • VB.NETで小数点以下の桁数を取得したい

     こんばんは。 VB.NETで1つ教えて下さい。 小数点以下の桁数を取得したいのですが どのようにすると良いのでしょうか? 例えば 1.5なら1 2.12なら2 2.555なら3と取得したいのです。 解るかたおられましたら ご教授、宜しくお願いします。

  • エクセル関数(小数点以下を表示しない方法)

    パソコン不慣れ者です。 エクセルの関数について小数点以下を表示しない方法を教えて頂きたいです。 例    請求書上ですと          お買い上げ額 =136,890          消費税     = 6,844 請求額     =143,734 の時          消費税の計算式入っている数字が =6,845 になってしまうので          そこに ROUNDDOWN で 数値= -1 桁数=0.1 と入れたら          6,844 になりました。          これは適当に入れたらこの数字になったと思うので          正式な正しい関数を入れたいと思います。          経理業務を急きょやらねばいけなくなってしまって困ってます。          宜しくお願い致します。