2017-06-09 11 views
0

とボタンで選択されたときに、フォームでコンボボックスコントロールのレコードは、私は、フォームを持って表示されません。コンボボックス上部、ConcreteItemは、どのレコードが現在フォームに表示されているかを制御します。コンボボックスが機能し、すべてのデータが正しく表示されますが、コンボボックスの[次の項目]および[前の項目]ボタンも追加されました。私はこのコンボボックスのコードを持っています:MSアクセス:すべてのテキストボックスは、ソーステーブルに接続されている</p> <p><a href="https://i.stack.imgur.com/3DPkE.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/3DPkE.png" alt="enter image description here"></a></p> <p>:コンボボックスのアイテムは、VBA

Dim rs As DAO.Recordset 
Set rs = Me.RecordsetClone 
rs.FindFirst "ItemDescription = '" & Me.cbo_ConcreteItem.Value & "'" 
If rs.NoMatch = True Then 
    MsgBox "No such record" 
Else 
    Me.Bookmark = rs.Bookmark 
End If 
rs.Close 

これは完全に動作します。しかし、私はこれを持っています次の項目ボタン。コンボボックスは、次の項目に進みとき

Dim idx As Long 
    idx = cbo_ConcreteItem.ListIndex 

If idx <> cbo_ConcreteItem.ListCount - 1 Then 
    cbo_ConcreteItem.Value = cbo_ConcreteItem.ItemData(cbo_ConcreteItem.ListIndex + 1) 
Else 
    cbo_ConcreteItem.Value = cbo_ConcreteItem.ItemData(0) 
End If 

Me.Refresh` 

残念ながら、コンボボックスには、正しい選択を表示するが、何もその下に変化しません。コードに「リフレッシュライン」がある場合でも、何も変わりません。唯一の解決策は、コンボボックス自体から実際に選択することです。

問題が何であるか教えていただけますか?

答えて

0

は実際に、私はちょうどコピーするのはかなり簡単な解決策を発見し、貼り付け

Dim rs As DAO.Recordset 
Set rs = Me.RecordsetClone 
rs.FindFirst "ItemDescription = '" & Me.cbo_ConcreteItem.Value & "'" 
If rs.NoMatch = True Then 
    MsgBox "No such record" 
Else 
    Me.Bookmark = rs.Bookmark 
    cbo_ConcreteItem_Change 
End If 

rs.Close 
+0

...ブックマーク

ブックマークを設定した後、この行を追加変更した場合、手動でコンボボックスのイベントをトリガしてみてくださいコードを一番下のコードに貼り付けます。両方とも異なるサブの一部ですが、下部のサブボックスでコンボボックスが選択された後にトップサブを使用して更新することができます。ありがとうtho! – FriendlyNeighborhoodNSA

+0

あなたが同じコードを複数の場所に複製していない限り、それはうまくいくでしょう...しかし、物事が変わると、あなたはもっとそれを考えていたと思います –

関連する問題

 関連する問題