プロが教えるわが家の防犯対策術!

いつもお世話になっています。
コンボボックスの3個目が表示されません。
コンボボックス1と2はうまく表示されます。
よろしくお願いします。
Private Sub ComboBox2_Change()
Dim ico As Long
ico = 1
With ThisWorkbook.Worksheets("data")
KEY = Me.ComboBox1.Text
KET2 = Me.ComboBox2.Text
KET3 = Me.ComboBox3.Text
Me.ComboBox3.Clear
Do While .Cells(ico, 1) <> ""
If .Cells(ico, 1) = KEY And .Cells(ico, 2) = KEY2 Then
ITE = .Cells(ico, 3).Value
flg = 0
For I = 0 To Me.ComboBox3.ListCount - 1
If ITE = Me.ComboBox3.List(I) Then flg = 1
Next
If flg = 0 Then Me.ComboBox3.AddItem ITE
End If
ico = ico + 1
Loop
End With
Me.ComboBox3.SetFocus
End Sub

A 回答 (2件)

これは本物のソースからコピーしたものでしょうか?



KET2 = Me.ComboBox2.Text
KET3 = Me.ComboBox3.Text

KETでなくてKEYではないでしょうか。それで
If .Cells(ico, 1) = KEY And .Cells(ico, 2) = KEY2 Then
このIf文が成立しないのでは。

Option Explicit を宣言しておけば、宣言されていない変数を使うとエラーになるので、変数名を間違えてもエラーになってくれるので、こういうケースを未然に防げます。

単にコピーするときの転記ミスで、的外れだったらすみません。
    • good
    • 0
この回答へのお礼

ほんとに入力ミスでした。(T_T)
何回もやってもダメなハズです。
すみませんでした。

お礼日時:2007/01/14 14:10

こんにちは。



変数のタイプミスあり。

●KET2 = Me.ComboBox2.Text

KET2 を下記のように、KEY2 で比較している

If .Cells(ico, 1) = KEY And .Cells(ico, 2) =● KEY2 ● Then
 
また、質問の件では関係ないが
  KET3 = Me.ComboBox3.Text
これも恐らく
  KEY3 では?

以上。
   
    • good
    • 0
この回答へのお礼

ほんとにすみません。ヽ(^^ゞ
情けないです。
何回自分で見てもわからなかったのです。
思いこみですね。
ありがとうございました。

お礼日時:2007/01/14 14:12

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!