Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


7352 / 13644 ツリー ←次へ | 前へ→

【39652】コンボボックスのリストの入れ方について しゃびぃ 06/6/28(水) 10:46 質問[未読]
【39654】Re:コンボボックスのリストの入れ方について Jaka 06/6/28(水) 13:04 発言[未読]

【39652】コンボボックスのリストの入れ方について
質問  しゃびぃ  - 06/6/28(水) 10:46 -

引用なし
パスワード
   コンボボックス1と2にdataシートからリストを表示するように下記のコードを作りましたが、何故かコンボ1にしかリスト表示されず、2は空白になってしまいます。
どこがいけないのでしょうか?

ico = 2
 'コンボ1セット
 With ThisWorkbook.Worksheets("data")
  Do While .Cells(ico, 1) <> ""
   ITE = .Cells(ico, 1).Value
   FLG = 0
   For I = 0 To Me.ComboBox1.ListCount - 1
    If ITE = Me.ComboBox1.List(I) Then FLG = 1
   Next I
   If FLG = 0 Then Me.ComboBox1.AddItem ITE
   ico = ico + 1
  Loop
 End With
 'コンボ2セット
 ico1 = 2
 With ThisWorkbook.Worksheets("data")
  Do While .Cells(ico1, 2) <> ""
   ITE = .Cells(ico1, 2).Value
   FLG = 0
   For I = 0 To Me.ComboBox2.ListCount - 1
    If ITE = Me.ComboBox2.List(I) Then FLG = 1
   Next I
   If FLG = 0 Then Me.ComboBox2.AddItem ITE
   ico1 = ico1 + 1
  Loop
 End With

【39654】Re:コンボボックスのリストの入れ方につ...
発言  Jaka  - 06/6/28(水) 13:04 -

引用なし
パスワード
   >For I = 0 To Me.ComboBox1.ListCount - 1
どういう状態からなのかわからないけど、
Me.ComboBox1.ListCountってリストがない場合は、0ですよね。
0から0だから何も実行されないって事じゃないですか?
F8で1ステップづつ変数の内容を確認しながら進んでみると、不具合の原因がわかると思います。

重複を取り除きたいなら、フィルタオプションで重複データを取り除くか、Dictionaryで重複データの削除が良いんじゃないかと思います。

7352 / 13644 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free