|
「sheet"2"で使用するuserform」というコメントや
「ある1行を選択したとき、」と言うようなが意味が分かりませんが、
一般的なUserFormに配置したComboboxの要素を選んだ時という風に解釈したとして、
>combobox1の4列表示の方法、Boxリスト中の見出し設定の方法、選択したときの1列目表示の方法も合わせてご教示ください。
は以下のようでしょうかね。
Private Sub ComboBox1_Click()
With Me.ComboBox1
If .ListIndex < 0 Then Exit Sub
Me.TextBox1.Value = .List(.ListIndex, 1)
Me.TextBox2.Value = .List(.ListIndex, 2)
Me.TextBox3.Value = .List(.ListIndex, 3)
End With
End Sub
Private Sub UserForm_Initialize()
Dim r As Range
Set r = Worksheets("Sheet1").Range("B3:E10")
With Me.ComboBox1
.RowSource = r.Address(External:=True)
.ColumnHeads = True
.TextColumn = 1 '表示する列を指定する。
.BoundColumn = 2 'Valueに返す列指定する。この場合はC列表示
.ColumnCount = 4
.ColumnWidths = "50;40;30;20"
End With
End Sub
一般に、各textboxへの2列目〜4列目の表示するために、
わざわざ元の範囲をVLookUpするなんてことはしませんね。
また、フォームのイニシャライズイベントで行ったCommbobox1への各プロパティ設定は、
コードによる設定でなくとも、フォームのデザインモードでプロパティウィンドウから
設定できるものばかりですので、そちらで設定してしまってもいいです。
詳しくはHelpでご確認あれ!
|
|