• ベストアンサー

EXCEL VBA コンボボックスでのLISTINDEXの値

初めて質問させていただきます。 EXCEL VBAでコンボボックスを設定したときのLISTINDEXの値についてですが、 コンボボックスがフォーム内に3つ(ComboBox1,2,3)あり、次のようなコードの入力を行い、 ComboBox1 Sub Userform_Intialize()  With CcomboBox1   AddItem"AAA" '・・・ここの値は0ですね   AddItem"BBB" '・・・ここの値は1ですね  End With End Sub sub ComboBox1_Change()  Me.combobox2.Clear  Select Case Me.ComboBox1.ListIndex   Case 0   Me.ComboBox2.AddItem "2AAA" '・・・ここの値は0ですね    Me.ComboBox2.AddItem "2BBB" '・・・ここの値は1ですね   Case 1   Me.ComboBox2.AddItem "2CCC" '・・・ここの値は何になりますか?   Me.ComboBox2.AddItem "2DDD" '・・・ここの値は何になりますか?  End Select End Sub このcombobox2の4つの項目から、 更にcombobox3の選択項目に分岐するように設定したいのです。 わかりやすいように、ComboBox3もComboBox2のように作成したいのですが、 このように入力した場合、ComboBox2で"2CCC"を選択した場合、 ListIndexの値が2ではないようなのです。 この"2CCC"と"2DDD"のListIndex値はいくつになるのでしょうか? どなたか教えて下さい。

質問者が選んだベストアンサー

  • ベストアンサー
  • hallo-2007
  • ベストアンサー率41% (888/2115)
回答No.1

 Me.combobox2.Clear<=としているので  Select Case Me.ComboBox1.ListIndex   Case 0   Me.ComboBox2.AddItem "2AAA" '・・・ここの値は0ですね    Me.ComboBox2.AddItem "2BBB" '・・・ここの値は1ですね   Case 1   Me.ComboBox2.AddItem "2CCC" '・・・ここの値は何 0   Me.ComboBox2.AddItem "2DDD" '・・・ここの値は何 1  End Select ではないでしょうか? 試しに、 Sub ComboBox2_Change() MsgBox ComboBox2.ListIndex End Sub といれて、ComboBox2を操作してみては如何でしょう。

noname#76636
質問者

お礼

どうも有難うございます。その通りでした。

その他の回答 (1)

  • n-jun
  • ベストアンサー率33% (959/2873)
回答No.2

>Me.ComboBox2.AddItem "2CCC" '・・・ここの値は何になりますか? >Me.ComboBox2.AddItem "2DDD" '・・・ここの値は何になりますか? 検証してないですが、0と1ではないでしょうか? Select Case で Me.ComboBox1.ListInde の値が0か1かで処理を変えてますから、 ComboBox2 に4つの値が入らないのでは?

関連するQ&A