OfficeType

VBA~ユーザーフォームのリストボックスで複数のアイテムを選択しよう~Excel

ユーザーフォームのリストボックスで複数のアイテムを選択したい場合はMultiSelectプロパティを設定します。

定数は以下の通りになります。

定数説明
なし0ユーザーは、複数の項目を選択できません。(既定値)
Simple1複数の項目を選択または選択解除するには、マウスで選択するか、Space キーを押します。
Extended2複数の項目を選択するには、Shift キーを押しながらマウスで選択するか、Shift キーを押しながら矢印キーを押して、以前に選択した項目から現在のアイテムまで選択範囲を拡張します。 マウスでドラッグして項目を選択できます。 Ctrl キーを押しながらアイテムを選択すると、そのアイテムが選択または選択解除されます。

書き方

オブジェクト名.MultiSelect = 定数

オブジェクト名はユーザーフォームのオブジェクト名と、リストボックスのオブジェクト名を指定します。オブジェクト名の確認方法は作成したユーザーフォームファイルをクリックするとユーザーフォームが表示されます。ユーザーフォーム全体を選択するとプロパティウィンドウにオブジェクト名という項目があるので、それがユーザーフォームのオブジェクト名になります。次にリストボックスを選択すると同じようにリストボックスのオブジェクト名が確認できます。プロパティウィンドウが表示されていない場合はメニューの表示からプロパティウィンドウをクリックすると表示されます。

UserForm1というユーザーフォームを作成し、ListBox1というリストボックスを設定した場合、下のコードを実行するとリストボックスでCtrlキーをおしながらアイテムをクリックすると複数のアイテムを選択できます。

Sub test1()

Load UserForm1
UserForm1.ListBox1.additem "織田信長"
UserForm1.ListBox1.additem "豊臣秀吉"
UserForm1.ListBox1.additem "徳川家康"
sampleForm.listFoods.MultiSelect = fmMultiSelectExtended
UserForm1.Show

End Sub

image-01

プロパティウィンドウで設定

作成したユーザーフォームのファイルをクリックしプロパティウィンドウの選択欄からリストボックスを選択します。プロパティウィンドウにMultiSelectの項目があるのでクリックすると▼マークが表示されるので定数を選択してください。プロパティウィンドウが表示されていない場合はメニューの表示からプロパティウィンドウをクリックすると表示されます。

image-02

image-03

image-04

image-05