- 締切済み
VBA ACCESS
コンボボックスで値を選んで選んだ時に、(検索して)テキストボックスに一覧表示させたいのですがうまくいきません。 どのようにすればいいでしょうか? 教えてください。よろしくお願いします。
- みんなの回答 (2)
- 専門家の回答
みんなの回答
少し、何をやりたいのかを簡潔に説明されないと・・・ 例えば、 tab1: ID__報告済__field_1 1___検査中__AA 2___検査中__B 3___報告済__C コンボ0:値集合ソース=0;検査中;1;報告済 このコンボボックスを選択後、検査中か報告済かでtab1.Field_1 をリストボックスに一覧表示したい。 Private Sub コンボ0_AfterUpdate() Me.[リスト0].Requery End Sub このように Requery を使ってもOKです。 この場合、値集合ソースにコンボボックスを参照して抽出するSQL文などを仕掛けます。 Me.[リスト0].値集合ソース =SELECT [field_1] FROM tab1 WHERE [tab1].[報告済]=[Forms]![フォーム2]![コンボ0]; また、Access のフォーム機能を利用しないでリストボックスをVBAで更新することも可能。 この場合は、Access のフォーム機能に変わるコードを記述することになります。 Private Sub コンボ0_AfterUpdate() Dim strSQL As String Me.[リスト0].RowSource = "" If Len(Me.コンボ0.Value & "") Then strSQL = "SELECT field_1 FROM Tab1 WHERE 報告済=" & Me.コンボ0.Value Me.[リスト0].RowSource = DBSelect(strSQL) End If End Sub 多分、前者が希望だと思います。 が、少なくとも、ここで書いたような簡単なテストサンプルは示さないと。 そして、それがどこで行き詰っているのかも・・・。 良く考えられた質問は、それ自体が既に正解を内包しているもんですよ。
- mshr1962
- ベストアンサー率39% (7417/18945)
コンボボックスに表示した項目(2列目以降)をテキストボックスにセットする方法があります。 http://support.microsoft.com/kb/879798/ja