本ページは公開が終了した情報の複製であり、掲載時点での情報です。本ページに記載されている内容について各所に問い合わせることはご遠慮下さい。
サポート技術情報

[XL]リスト ボックスで選択された項目を取得する方法

文書番号: 401691

最終更新日: 1998/02/10


この資料は以下の製品について記述したものです。


この記事は、以前は次の ID で公開されていました: JP401691

概要

Microsoft(R) Visual Basic(R) Programming System Applications Edition (以下
VBA) を使用してユーザー定義の「ダイアログ ボックス」を表示することができま
す。本文書では、表示したダイアログ ボックスに含まれる「リスト ボックス」の
選択項目のうち、「どの項目が選択されたか」を取得する方法をサンプル モジュ
ールと共に解説しています。

詳細

ListBox オブジェクトには「単一選択」、「複数選択」、「拡張選択」の三つの
選択方法が提供されています。
「単一選択」に設定しているリスト ボックスの場合は、Value や ListIndex など
のプロパティを使用して選択されている項目を調べることができます (「サンプル
1 」参照)。「複数選択」あるいは「拡張選択」に設定しているリスト ボックスの
場合は、Selected プロパティを使用して選択されている項目を調べることができ
ます。Selected プロパティは、リスト ボックスの各項目の選択状態を示す値を
ブール値 (True、False) の配列で返します。この配列の中で、値が True のも
のが「現在選択されている項目」と認識することができます。この配列を使用し
てループ処理を行うことにより、簡単に利用することができます (「サンプル 2 」
参照)。

サンプル 1

「単一選択」リスト ボックスで選択された項目の表示

次のサンプル モジュールでは、ダイアログ ボックスを表示し、リスト ボック
スで選択された項目を MsgBox 関数を使用して表示しています。
  Sub MyDia1()
      DialogSheets("Dialog1").Show
      itemNo = DialogSheets("Dialog1").ListBoxes("リスト 4").Value
      MsgBox DialogSheets("Dialog1").ListBoxes("リスト 4").List(itemNo)
  End Sub

サンプル 2

「複数選択」あるいは「拡張選択」リスト ボックスで選択された項目の表示

次のサンプル モジュールでは、ダイアログ ボックスを表示し、リスト ボッ
クスで選択された項目を MsgBox 関数を使用して表示しています。
  Sub MyDia2()
      Dim selectitem As Variant
      DialogSheets("Dialog2").Show
      selectitem = DialogSheets("Dialog2").ListBoxes("リスト 4") _
      .Selected
      For i = 1 To DialogSheets("Dialog2").ListBoxes("リスト 4") _
      .ListCount
          If selectitem(i) = True Then
              MsgBox DialogSheets("Dialog2").ListBoxes("リスト 4") _
              .List(i)
          End If
      Next i
  End Sub

Keywords: KBHOWTO KB401691
Technology: kbExcel500 kbExcelSearch kbExcelWinSearch

inserted by FC2 system