- ベストアンサー
エクセルVBA ユーザーフォームのtextboxの書式設定って?
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
こんにちは、 TextBox には書式はありませんから、以下のようにFormat 関数を使います。 テキストボックスの文字は右揃えは、そのプロパティの TextAlign =3 '-fmTextAlignRigh に設定します。 Private Sub TextBox1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer) Dim str1 As String If KeyCode = 13 Then str1 = TextBox1.Text If IsNumeric(str1) Then TextBox1.Text = Format$(CLng(str1), "#,##0") End If End If End Sub また、その数字を使って計算する場合は、Clng /CDbl で数値に変換します。 Private Sub CommandButton1_Click() '計算する場合 Dim str1 As Variant str1 = TextBox1.Text If IsNumeric(str1) Then str1 = CLng(str1) * 10 '計算する場合は、Clng で変換 TextBox2.Text = Format$(CLng(str1), "#,##0") End If End Sub
その他の回答 (1)
- Wendy02
- ベストアンサー率57% (3570/6232)
こんにちは。 >If KeyCode = 13 Then の「13」とは何を意味しているのでしょうか。 keycodeの事もあまり理解できていないので これは、わたし流なのかもしれませんが、TextBox_Change だと、いちいち、入力の最中にプログラムが働いて、結構、ウットウしいので、Enter(= 13 = CR ) の時だけ、プログラムが働くようにしています。
お礼
なるほど 「enter処理の時に」と言うことなのですね。 とても勉強になりました。 ありがとうございますー
関連するQ&A
- ユーザーフォーム内のテキストボックス内の書式設定
A1セルに12.345と入力してあり、書式は「数値」で小数点以下の桁数2にしてあり、 「12.35」と表示されます。 VBAを起動して、ユーザーフォームを挿入し、 テキストボックスを作成し、 TextBox1の「ControlSource」にA1と入力すると TextBox1には「12.345」と表示されます。 エクセルのA1と同じ様に TextBox1も「12.35」と表示したいのですがどうすればいいのでしょうか? エクセル2003です。 よろしくお願い致します。
- ベストアンサー
- オフィス系ソフト
- VBAで入力した数字の書式が上手くいきません
VBAの学習を始めました。使用EXCELのVersionは2000です。 フォーム上のTextBoxへ数字を入力し、それをSheetのセルに代入したのですが、セルの左側に寄ってしまい、3桁のカンマ表示も出来ません。 勿論、表のセルには「数字・カンマ表示」の書式設定は行ってありますので、キーボードから直接入力した場合には正しく表示されます。 (以前同じようなsheetを作った時には上手くいったので理由が解りません) どこが間違っているのでしょうか?アドバイスの程、宜しくお願い申し上げます。
- ベストアンサー
- Windows 95・98
- エクセルの書式設定を、ワードに反映させたい
エクセルで、金額に書式設定で桁区切りの コンマをつけたデータがあります。 このデータを、ワードで差し込み印刷すると、 コンマが表示されません。 表示させる方法はあるのでしょうか? よろしくお願いいたします。
- ベストアンサー
- オフィス系ソフト
- EXCEL TextBox farmat
excel VBA フォームの TextBox入力時 1,200.5 のように 桁区切りと少数点以下を表示したいのですが Formatの指定で可能でしょうか Format(TextBox1, "#,###.#") ではダメなようです
- ベストアンサー
- Excel(エクセル)
- ユーザーフォームのテキストボックスの書式設定について
ユーザーフォームのテキストボックスの書式設定について TextBox1に金額、TextBox2に日付を入力し、Sheet1に転記するような フォームを作っています。 TextBox1には、 Private Sub TextBox1_Change() y = TextBox1.Text TextBox1.Text = Format$(CLng(y), "#,##0") End Sub としています。 TextBox2には、書式をH○○.○.○という設定にしたいのですが、 どのようにしたらよいでしょうか。
- ベストアンサー
- オフィス系ソフト
- Excel-VBA TextBoxの書式設定について
Excel-VBA TextBoxの書式設定について Excel2003-VBAのUserForm1にTextBox1を作成しました。 横位置・インデント・縦位置を設定しようとして プロパティを見たものの該当プロパティが分かりません。 ご教授宜しくお願いします。
- ベストアンサー
- Visual Basic
- ユーザーフォームに書式設定は出来るのでしょうか
お世話になっています。 ユーザーフォームにテキストボックスを配置し品名・数量・単価・金額等を入力しています。 ●御指導いただきたき事 1・数量・単価を入力し終わった時、,(カンマ)を表示させたいのですが可能なのでしょうか 入力(123456789) → 表示(123,456,789) 2・可能ならば設定の方法を御指導ください。 宜しく御願いいたします。
- ベストアンサー
- オフィス系ソフト
- エクセルVBAのユーザーフォーム
こんばんは、エクセルVBAでユーザーフォームを作成しました。 そこに入力したものがブックに反映するわけですが、フォームに0(ゼロ)を入力した場合、ブック上のセルを選択すると0と入っているのですが、表示されません。なぜでしょう???? これができないとせっかく時間をかけて作ったのに、使えません。どなたかご存知の方よろしくお願いします!!!!
- ベストアンサー
- オフィス系ソフト
- VB2005のTextBoxでカンマ区切りの表示
よろしくお願いします。開発環境はVB2005です。 フォーム上に配置したTextBoxに金額を入れるのですが、わかりやすく読めるようにユーザーが数字を入力したら自動的に3桁のカンマ区切りで表示したいのですが、どのような方法があるのか教えてください。
- ベストアンサー
- Visual Basic
- excel vba ユーザーフォーム
現在、セルa101からa110までに「商品名」、セルb101からb110までに「金額」が 入力済みです。 このデータを、ユーザーフォーム上にコンボボックスを2つ作成し、セルa1へ 商品名を選択後、入力。また、b2へ金額を選択後、入力させたいのです。 また、ユーザーフォーム上にテキストボックスを作成し、ここに入力した 「備考」の全角10文字をc1へ移動したいです。 今のところ、ユーザーフォーム、コンボボックス、テキストボックスを作成した だけで 立ち往生しています。 どなたか、ご教授お願いいたします。
- ベストアンサー
- Excel(エクセル)
お礼
早速のご返答ありがとうございます。 やはり、書式設定みたいなのは無いのですね。 コード方を作成していただき、誠にありがとう ございます。 カンマを表示させるのに、こんなにコードが 必要なのですね。 おかげさまで、このコードを参考に、カンマ 導入をしていけそうです。 で、少し、このコードについて質問なのですが >If KeyCode = 13 Then の「13」とは何を意味しているのでしょうか。 keycodeの事もあまり理解できていないので もし、お手数でなければお願いいたします。