5-9 指定した列のテキストを表示するリストボックス 2021.11.16
次の書籍の第1章~5章を公開しています。
「Excel VBA 逆引きで学ぶ ユーザーフォーム&コントロール」
TextColumnプロパティは、指定した列のテキストをTextプロパティに設定します。
プロパティに設定できる値の範囲は、-1~リストの列数までの整数です。
・-1(既定):0より大きなColumnWidths 値を持つ最初の列を表示
・0:ListIndexの値を表示
・1~:指定の列を表示
例えば「Sheet1」シートのセル範囲[A1:D8]に次の値が設定されているとします。
サンプルコード
フォームを生成する際に、リストボックス1に「Sheet1」シートのセル範囲[A2:D8]を設定
表示列を4列にし、見出しを表示設定
2列目の値をTextプロパティに設定、4列目の値をValueプロパティに設定
Private Sub UserForm_Initialize() With ListBox1 .RowSource = "Sheet1!A2:D8" .ColumnCount = 4 '表示列数 .ColumnHeads = True '見出しあり .TextColumn = 2 '2列目の値をTextプロパティに設定する .BoundColumn = 4 '4列目の値をValueプロパティに設定する End With End Sub
Private Sub CommandButton1_Click() MsgBox "選択した値:" & ListBox1.Text & vbLf & _ "該当列の値:" & ListBox1.Value End Sub
フォームを起動し、リストから値を選択し、コマンドボタンを押すと、選択した行の2列目の値がTextプロパティとして、4列目の値がValueプロパティとして取得されます。
書籍紹介140以上のサンプルファイル付き!
知りたいがすぐわかる! やりたいがすぐできる!
「Excel VBA 逆引きで学ぶ ユーザーフォーム&コントロール」(Kindle版)
ユーザーフォームを扱えると、VBAでできることが大きく広がります!
本書では、知りたいこと、やりたいことから、逆引きで学びを深められます。
■ 購入:amazon