- 締切済み
エクセルVBAユーザーフォーム「テキストボックス」「コンボボックス」の書式設定について
ユーザーフォームを作成して、出荷実績を投入しようとしています。 現在、ユーザーフォームを作成して、 上から以下のようにボタンが並んでいます。 (1)コンボボックス1 商品コードと商品名を選択する。 (2)テキストボックス1~7 地域ごとの出荷実績を投入する。 (3)コマンドボタン1 決定→入力 (4)コマンドボタン2 終了 そして、以下3つの問題点がありますが、どのようにVBAを記述したら良いのか、わかりません。 a.コンボボックス1に表示される商品を商品コード (アルファベット)と商品名で改行したい。 つまり「折り返して全体を表示する」ことは出来ないでしょうか。 b.「AAAA~」は5行目・「CCCC~」は7行目 といった ように、商品ごとに値を投入する行を変更したい。 c.テキストボックス1~6の内容の合計が自動で(入力している 最中に)テキストボックス7に表示されるようにしたい。 次のようなVBAは記述出来たのですが、上記3つの要素を加えるには どのようにしたらよいのか、教えていただけないでしょうか? ちなみに入力する順番は次のようになっています。(設定済み) M4→L4→J4→K4→H4→I4 →M5→L5→J5→K5→H5→I5 ------------------------------------------------------------- ’フォームを表示させる。 Sub formdsp() UserForm1.Show End Sub ’フォーム内容 Dim cnt As Integer Private Sub Combobox1_Change() End Sub '入力ボタン Private Sub CommandButton1_Click() With ActiveSheet .Cells(cnt, 13) = TextBox1.Text .Cells(cnt, 12) = TextBox2.Text .Cells(cnt, 10) = TextBox3.Text .Cells(cnt, 11) = TextBox4.Text .Cells(cnt, 8) = TextBox5.Text .Cells(cnt, 9) = TextBox6.Text .Cells(cnt, 15) = TextBox7.Text cnt = cnt + 1 .Cells(cnt, 13) = Activate End With UserForm1.TextBox1.Text = "" UserForm1.TextBox2.Text = "" UserForm1.TextBox3.Text = "" UserForm1.TextBox4.Text = "" UserForm1.TextBox5.Text = "" UserForm1.TextBox6.Text = "" UserForm1.TextBox7.Text = "" UserForm1.Combobox1.Text = "" UserForm1.TextBox1.SetFocus End Sub '終了ボタン Private Sub CommandButton2_Click() Unload Me End End Sub 'コンボボックス Private Sub userform_initialize() cnt = 4 With UserForm1.Combobox1 .AddItem "AAAA 11111111111" .AddItem "BBBB 22222222222" .AddItem "CCCC 333333333" .AddItem "DDDD 444444" .AddItem "EEEE 5555555555" .AddItem "FFFF 666" .AddItem "GGGG 7777777" .AddItem "HHHH 88888" .AddItem "IIIII 999999999" .AddItem "JJJJ 0000000000000" .AddItem "KKKK 1111" .AddItem "LLLL 222222" .AddItem "MMMM 3333" End With End Sub
- みんなの回答 (2)
- 専門家の回答
補足
TextBoxのイベントを確認しても、どのように書式を設定したら よいのか理解できませんでした。 マクロを使い始めて数か月。 独特のマクロの記述方法を理解できていません。 詳しく紹介されている良いサイトや本などはありませんか?