桁区切りするには


ユカりん  2002-09-25 19:36:52  No: 105039

ラベルに数値を表示するときに桁区切りをしたいのですが、どのような
ソースを書けばよいのでしょうか??


おやじ  2002-09-25 21:16:51  No: 105040

テキストボックスにもとの数値が入っているとして、以下のソースで
いかがでしょう。
Private Sub Label1_Click()
    t = Text1.Text
    If IsNumeric(t) Then
        k = InStr(t, ".")
        If k > 0 Then '小数点以下を分離しておく
            t1 = Left(t, k - 1)
            t2 = Right(t, Len(t) - k + 1)
        Else
            t1 = t
            t2 = ""
        End If
        k = Log10(t) \ 3
        For i = k To 1 Step -1
            t1 = Left(t1, Len(t1) - i * 3) + "," + Right(t1, i * 3)
        Next
        Label1.Caption = t1 + t2
    End If
End Sub

Function Log10(x) As Integer
    Log10 = CInt(Log(x) / Log(10))
End Function


やまだ  2002-09-26 00:17:58  No: 105041

formatnumberって関数でもいけます。


たかみちえ  URL  2002-09-26 02:33:47  No: 105042

MSDNのFornat関数の数量指定子のページに、そういう風にするための文字が書いてあったような気がします。
Format関数自体、結局わからなかったので、あんまり使ってませんけど。


あき☆彡  2002-09-26 04:20:13  No: 105043

桁区切りなら、こんな感じで良いと思いますが・・・

    Label1.Caption = Format(Text1.Text, "#,#")


Say  2002-09-26 04:58:37  No: 105044

MaskEditコントロールを使えば、
デザイン時にプロパティページで書式設定しておいて、
あとはただ代入するだけですみます。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加