整数と小数点に分解する その危うさ
さてお題 変数の特性を理解しないとこーなると言う やらかしを例に
![](https://assets.st-note.com/img/1712053347423-k2QprKNsFG.png)
![](https://assets.st-note.com/img/1712053399019-J6vb6wESLl.png)
上記を分解する場合 45384.7721444444 をExcelの日付と時間があるタイプ
私の場合は無意識に As Double 指定したけど…。
Public Sub TEST()
Dim SingleTime As Single, DoubleTime As Double, CurrencyTime As Currency
Const DateTime As Double = 45384.7721444444
Stop
Debug.Print Fix(DateTime)
SingleTime = DateTime - Fix(DateTime)
DoubleTime = DateTime - Fix(DateTime)
CurrencyTime = DateTime - Fix(DateTime)
Stop
Debug.Print SingleTime
Stop
Debug.Print DoubleTime
Stop
Debug.Print CurrencyTime
End Sub
う~ん、 横着しちゃいかんね(笑)。
小数点はコレが怖いんですよね~、機会が少ないだけに余計…
ちなみに RPAの場合は 文字列で"."を区切り文字にして扱うかな
整数と小数点に分解するならだけど、
お勧めは正常処理に "."を区切り文字で切り分けて 整数・小数点を処理
異常処理に 分解出来ない時は整数として処理
がベースかな?要求にもよるけど
みんなも 小数点 は慎重に扱おうね @ いやほんとに
この記事が気に入ったらサポートをしてみませんか?