CSng関数

 値を数値(単精度浮動小数点型)に変換します。
 変換できる値の範囲は-3.402823E+38~3.402823E+38で、最大有効桁数は7です。

使用例

表記例出力例説明
CSng("1000")1000
CSng("5000")5000全角でも変換されます
CSng("\1,000")1000\やカンマがあっても変換されます
CSng("1234.5")1234.5小数を扱うこともできます
CSng("1234.56789")1234.56787109375ただし桁数が大きいと下位の桁は不正確なものとなります
CSng("12345678901234567890")1.23456793955061E+19一定以上の数値は仮数部(1.23456793955061)と指数部(E+19)で表現されます
一定以上の数値になるとこのように表示を省略されるだけでなく、下位の桁は精度を欠くものとなります
CSng("12345678901234567890")-CSng("12345678901234567889")0よって計算結果も不正確となります
CSng("0.1234567890123456789")0.123456791043282桁数の大きい小数の場合も一部が丸められ、下位の桁は不正確なものとなります
CSng("0.1234567890123456789")-CSng("0.1234567890123456788")0よって計算も不正確となります
TypeName(CSng("100"))Single単精度浮動小数点型と判定されます
CSng("1%")(エラー)パーセンテージは変換されずエラーとなります
CSng("2017/09/16")(エラー)
CSng(#2017/09/16#)429941899/12/31を1(日目)とする数値に変換されます

書式

CSng(値)

備考

 より高い精度を求めるならCDbl関数やCCur関数の利用を検討する必要があります。