Double, 倍精度浮動小数点数型
変数の種類 Doubleとは
変数にはデータ型があり、その種類によってデータ型を宣言するということを説明しました。数値には、よく使われるデータ型が4通りあります。今回はDouble, 倍精度浮動小数点数型です。
Excel 2013マクロ講座15回
変数~Double(倍精度浮動小数点数型)
今回は、小数点を変数に取る場合の型を見て行きましょう。
前回(14回)のサンプルFileを開くか、新規でコードを入力してください。
(サンプルファイルは、こちらから 2013マクロ講座15回サンプルデータ)
Excelバージョン:
変数を宣言する~Double(倍精度浮動小数点数型)
コードをコピーして貼り付けます。
マクロprog1をコピーして貼り付け、名前をprog3に変更しました。
そして、Xの値を小数点付きの数字に変更します。例では、8.5
Sub prog3() Dim x As Single x = 8.5 Range("A1").Value = x End Sub
VBEのコードウィンドウとExcelのウィンドウを並べて(比較のため)、
ユーザーフォームの実行ボタンを押します。
ユーザーフォームの実行ボタンを押します。
当たり前ですが、
変数xはIntegerだ!
と宣言しているので、8.5と入れても、
「あ、8ね。」
と理解しているんですね。
では、Integerを小数点以下を扱える変数タイプSingleに書き換えてください。
変数xはIntegerだ!
と宣言しているので、8.5と入れても、
「あ、8ね。」
と理解しているんですね。
では、Integerを小数点以下を扱える変数タイプSingleに書き換えてください。
ユーザーフォームの実行ボタンを押します。
今度は、きちんと小数点のついた値が表示されました。
今度は、きちんと小数点のついた値が表示されました。
Single(単精度浮動小数点数型)は小数点を含む数値を格納する変数タイプです。
もう一つDoubleというのがあって、Double(倍精度浮動小数点数型)は単精度浮動小数点数型(Single)よりも大きな桁の数値を格納する変数タイプです。
そこで、
Dim x As Double
と宣言して、Xの桁数が大きくなるようにしてみます。
もう一つDoubleというのがあって、Double(倍精度浮動小数点数型)は単精度浮動小数点数型(Single)よりも大きな桁の数値を格納する変数タイプです。
そこで、
Dim x As Double
と宣言して、Xの桁数が大きくなるようにしてみます。
どこからどこまでが、Singleでどこからが、Doubleなのかは、一番面倒なことですが、
Singleの有効桁数は7桁(内部的には9桁)なので、7桁を超える値を扱う可能性がある場合は、Doubleを使えばいいのですが、悩む位ならいっそ、
小数点を扱う時は、いつもDoubleでいいかと思います。
single 単精度 (-999999. ~ 999999.)
double 倍精度 (-9999999999999999. ~ 9999999999999999.)
Singleの有効桁数は7桁(内部的には9桁)なので、7桁を超える値を扱う可能性がある場合は、Doubleを使えばいいのですが、悩む位ならいっそ、
小数点を扱う時は、いつもDoubleでいいかと思います。
single 単精度 (-999999. ~ 999999.)
double 倍精度 (-9999999999999999. ~ 9999999999999999.)
Sub prog4() Dim x As Double x = 8.12345 * 50.67 Range("A1").Value = x End Sub
変数の種類 Integer,Long,Single,Double