- ベストアンサー
ExcelVBAでテキストボックスの表示形式を小数点第二位まで表示する方法
Excelのプログラムで、テキストボックスに例えば、「10.00」や「10.50」など小数点第二位まで0であっても表示させる方法はありませんか? あまり複雑になるようなら特に必要なプログラムではないのですが。 回答よろしくお願いします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
値の元は何処からですか? 自分自身ですか? 値の元が違うなら、 No2さんが答えたように、 TextBox2.Text = Format(TextBox1.Text, ""#."#0") ですが、自分自身で入力が終わってフォーカスが移動した時などなら Private Sub TextBox1_LostFocus() TextBox1.Text = Format(TextBox1.Text, "#.#0") End Sub こうすることで、出来ます。 ただし、この #.#0は、 0の場合→ .00 となり 0.567822 → .56 となります。 0の場合→ 0.00 0.567822 → 0.56 としたい場合は、 0.00を指定します。 例 TextBox1.Text = Format(TextBox1.Text, "0.00")
その他の回答 (2)
- chibita_papa
- ベストアンサー率60% (127/209)
TextBox1.Text = Format$(10, "#.#0") TextBox1.Text = Format$(10.5, "#.#0") 参考にして下さい
お礼
なるほど。Formatを使えばいいわけですね。 ありがとうございました。
- Kaone
- ベストアンサー率60% (33/55)
表示させるだけなら、表示させたい、セルを選択して、右クリックのメニューからセルの書式設定を選んで、表示形式をユーザー定義にして種類の中から、0.00を選んでOKを押すと期待のような表示が得られると思うのですが、VBAを使っても可能ですが、する必要がありますか?
お礼
今更ですが、お礼の記載が大変遅くなり、申し訳ありません。 ありがとうございました。
補足
えっと、ワークシートのセルの方ではなくフォームに作ったテキストボックスの表示です。 よろしくお願いします。
お礼
値の元は、テキストボックス自体からです。 今回の場合は小数点第二位で表示したいので、「.00」という形ですね。 なるほど。「#.#0」でやるとそれより下の小数点は切り捨てられてしまうんですね。 ありがとうございました。