• ベストアンサー

VBAコンボボックスの内容が反映されない

超初心者で、申し訳ございません。下記のようなコードを入力しましたが、 プルダウンは動くのですが、選択することが出来ません。誤りを指摘していただきたく、ご教授の程よろしくお願いします。 Private Sub UserForm_Initialize() With MainForm.ComboBox1 .List = Sheets("data").Range("A2:A11").Value .ListIndex = 0 End With Private Sub ComboBox1_Change() With MainForm.ComboBox1 .List = Sheets("data").Range("A2:A11").Value .ListIndex = 0 End With End Sub

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

  • ベストアンサー
  • hana-hana3
  • ベストアンサー率31% (4940/15541)
回答No.1

>.List = Sheets("data").Range("A2:A11").Value は、コンボボックスに選択用のデータをセットする事。 >.ListIndex = 0 は、リストのデータを0番目(未選択)に設定すること。 ComboBox1_Change() イベントは、リストのデータが選択(変更)された時に機能するものです。 事前にUserForm_Initializeでデータのセットも初期化もされているので、同様のコードは不要です。 ComboBox1_Change()では、選択されたリストのデータを取得して何をしたいのかを記述する部分です。

yuripp
質問者

お礼

ListIndex = 0を削除したら、無事に回避できました。 超初心者の質問、ご回答ありがとうございました。

その他の回答 (1)

  • dsuekichi
  • ベストアンサー率64% (171/265)
回答No.2

> プルダウンは動くのですが、選択することが出来ません。 Changeイベントで、Initializeイベントと同じ事をしているんですから、 当然、毎回リセット(先頭を、選択し直し)されますよね・・・

関連するQ&A