• 締切済み

VBAのコードについて教えてください。

ユーザーフォームを作成したのですが、コードが分かりません教えて下さい。 ・ユーザーフォームは工場名を選択項目とし以下住所、電話番号等のExcelに記入してある情報が工場名コンボボックスより選択することによって、出てくるようにしたいのですが、可能ですか?個人情報はEXCELシート上にあり、随時追加されていきます。 また工場名のリストはexcelシートのsheet2にマスタとして登録されているところを参照するように設定したいです。

みんなの回答

  • mar00
  • ベストアンサー率36% (158/430)
回答No.2

sheet3のA列にはsheet2と同じ並びで工場名が入力されているものと仮定してます。(下図) ユーザーフォームはコンボボックス、住所、電話番号を表示するテキストボックスがそれぞれは位置しているものとします。 コンボボックスより選択すると住所、電話番号がテキストボックスに表示されます。 Private Sub UserForm_Initialize() Set Lws = Sheets("sheet2") For i = 2 To Lws.Cells(Rows.Count, 1).End(xlUp).Row UserForm1.ComboBox1.AddItem Lws.Cells(i, 1) Next End Sub Private Sub ComboBox1_Change() Set WS01 = Sheets("sheet3") Mylist = ComboBox1.ListIndex + 2 TextBox1 = WS01.Cells(Mylist, 2) TextBox2 = WS01.Cells(Mylist, 3) End Sub

  • mar00
  • ベストアンサー率36% (158/430)
回答No.1

sheet2のA列の1行目から工場名が入力されていると仮定して Private Sub UserForm_Initialize() Set Lws = Sheets("sheet2") For i = 1 To Lws.Cells(Rows.Count, 1).End(xlUp).Row UserForm1.ComboBox1.AddItem Lws.Cells(i, 1) Next End Sub コンボボックスに工場名が出てくるようになります。 住所、電話番号等はどのシートにどのように入力されているのかが 分からないので回答のしようがありません。

a-katou
質問者

補足

早速の回答ありがとうございます。 補足ですが、住所や電話番号に関してはsheet3のB列(住所)C列(電話番号)を記載しております。

関連するQ&A