' [400.xls] ' [Module1] のコード '★★☆ リストボックスの表示項目を3列表示する ☆★★ Option Explicit Sub start() UserForm1.Show End Sub ' [UserForm1] のコード Option Explicit 'クリックイベントではすでに選択されている行をクリックしても 'イベントは発生しません、そういった時は MouseUp を使います Private Sub ListBox1_MouseUp(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single) With ListBox1 If OptionButton1.Value Then .BoundColumn = 1 ElseIf OptionButton2.Value Then .BoundColumn = 2 Else .BoundColumn = 3 End If Label1.Caption = .Value End With End Sub Private Sub OptionButton1_Click() '住所 With ListBox1 .BoundColumn = 1 Label1.Caption = .Value End With End Sub Private Sub OptionButton2_Click() '会社名 With ListBox1 .BoundColumn = 2 Label1.Caption = .Value End With End Sub Private Sub OptionButton3_Click() '電話番号 With ListBox1 .BoundColumn = 3 Label1.Caption = .Value End With End Sub Private Sub OptionButton4_Click() '住所列 ListBox1.ColumnWidths = "-1;0;0" End Sub Private Sub OptionButton5_Click() '会社名列 ListBox1.ColumnWidths = "0;-1;0" End Sub Private Sub OptionButton6_Click() '電話番号列 ListBox1.ColumnWidths = "0;0;-1" End Sub Private Sub OptionButton7_Click() '全列を表示 ListBox1.ColumnWidths = "40;50;50" End Sub Private Sub UserForm_Initialize() 'フォーム起動時にプロパティー設定 With ListBox1 '列数をセットする .ColumnCount = 3 '複数の列あるリストボックスの各列幅を設定 .ColumnWidths = "40;50;50" 'リストボックスに表示するデータ範囲を設定 .RowSource = "Title!D9:F13" '値を返す列の設定 .TextColumn = 1 '1列目の1行目をラベルに表示 .Selected(0) = True Label1.Caption = .Text End With End Sub