コードが正しく動作しない理由について、アドバイス/ヒント/修正を求めています。
私は2つのフォームを持っています。
Form1にメニューバー(追加タイプのメニューバー)があり、form2のコンボボックスリストをループさせたい(リストに追加できる既存のデータがないかどうかを確認するため)。
私が理解していないのは、なぜform1で動作しないのですか? 1つのフォームを使用して他のプロジェクトでコードをテストしている間、それは機能します。誰かが何が悪いのか教えてもらえますか? なぜ?
2フォーム使用。このコードは新しい型を追加するだけで、コンボ ボックスにデータが存在するかどうかをチェックしません:(
Private Sub mnuAYT_Click()
Dim TypeYacht As String 'Type of yacht added
Dim blnItem As Boolean
Dim intItem As Integer
' - - - - - - - LOOP THROUGHT the combo box all items - - - - - - -
blnItem = False
intItem = 0
Do Until blnItem = True Or intItem = NewCharter.cmbTypeYacht.ListCount
If TypeYacht = NewCharter.cmbTypeYacht.List(intItem) Then
blnItem = True
End If
intItem = intItem + 1
Loop
If blnItem = True Then
MsgBox TypeYacht & " " & "is already exist", vbInformation, "Yacht Type Match"
NewCharter.cmbTypeYacht.ListIndex = intItem - 1
Else
NewCharter.cmbTypeYacht.AddItem NewCharter.cmbTypeYacht.Text
MsgBox "Successfully added new Yacht Type", vbInformation, "Successfully Added"
End If
End Sub
ちなみに、これは1つのフォームのみを使用する私のコードです(追加してデータが存在するかどうかを確認してください)
Dim TypeYacht As String 'Type of yacht added
Dim blnItem As Boolean
Dim intItem As Integer
' ----------------------------- LOOP THROUGHT the combo box all items -------------------------
blnItem = False
intItem = 0
TypeYacht = cmbTypeYacht.Text
Do Until blnItem = True Or intItem = cmbTypeYacht.ListCount
If TypeYacht = cmbTypeYacht.List(intItem) Then
blnItem = True
End If
intItem = intItem + 1
Loop
If blnItem = True Then
MsgBox TypeYacht & " " & "is already exist", vbInformation, "Yacht Type Match"
cmbTypeYacht.ListIndex = intItem - 1
Else
cmbTypeYacht.AddItem cmbTypeYacht.Text
MsgBox "Successfully added new Yacht Type", vbInformation, "Successfully Added"
End If