つい集めてしまうものはなんですか?

VBScript (ASP)での開発です。

3→3.0
10→10.0
1.005→1.0

以上のように、数値を小数第一位で固定して
表示したいと思っています。
で、FormatNumber(数値,1)というようにしてみたのですが、
小数値が数値に入る時は良いのですが、整数がきた時は
整数のままで困っています。

小数で表示する方法を教えていただけないでしょうか。

A 回答 (2件)

FormatNumber(数値,1)は小数点以下1桁の文字列を返すので、整数でも少数でも小数点以下1桁を返すはずです。


その後に数値に変換するような処理をしてませんか?

Dim a
a = 10
MsgBox FormatNumber(a, 1) '文字列の10.0
MsgBox FormatNumber(a, 1) + 0 '数値の10




数値では整数は整数でしか表示できないので、表示する時にFormatNumber(数値,1)で文字列に変更すれば整数でも小数点以下1桁を表示するはずです。

Dim a
a = 10 '整数の10
a = FormatNumber(a, 1) '文字列の10.0
MsgBox a '文字列の10.0 を表示
a = a + 0 '整数の10
MsgBox a '整数の10 を表示
a = FormatNumber(a, 1) '文字列の10.0
MsgBox a '文字列の10.0 を表示
    • good
    • 0

If 数値 - Fix(数値) > 0 Then


MsgBox FormatNumber(数値,1)
End if

If 数値 - Fix(数値) = 0 Then
MsgBox FormatNumber(Clng(CStr(数値) & ".0"),1)
'あるいは MsgBox FormatNumber(Clng(CStr(数値)),1) でも?
End If
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


おすすめ情報