- ベストアンサー
VBAコマンドボタンの頭に0がでない問題について
- VBAコマンドボタンを使用して数値を表示する際、頭に0をつける方法について質問です。
- 現在、0.1や.1を入力しても正しく表示されず、1になってしまいます。
- この問題を解決する方法についてアドバイスをいただきたいです。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
> 「.1」と入力して0.1ってのは無理でしょうか? Dotを入れたら「0.」にする方法です。 Private Sub CommandButton11_Click() Selection.NumberFormat = "@" 'すでにDotがあれば何もしない If InStr(1, Selection.Value, ".") <> 0 Then Exit Sub End If If Selection.Value = "" Then Selection.Value = "0" End If Selection.Value = Selection.Value & "." End Sub もしくはすべてのボタンで DotCheckをする方法です。 Private Sub CommandButton1_Click() Selection.NumberFormat = "@" DotCheck Selection.Value = Selection.Value & "1" End Sub これを別に作成しておきます。 Function DotCheck() If Selection.Value = "." Then Selection.Value = "0." End If End Function
その他の回答 (1)
- kkkkkm
- ベストアンサー率66% (1734/2604)
全てのボタンのクリックで書式を文字列にして値を入力するようにするか Selection.NumberFormat = "@" Selection.Value = Selection.Value & "1" テキストボックスを作成し、いったんテキストボックスに入れたものをセルに入力するという方法もあります。
補足
コメントありがとうございます。 Selection.NumberFormat = "@"にすることでできましたが、 「.1」と入力して0.1ってのは無理でしょうか?
お礼
ありがとうございます。 すべてのボタンで DotCheckを入れる方法でうまくできました。