• 締切済み

VBA ACCESS

コンボボックスで値を選んで選んだ時に、(検索して)テキストボックスに一覧表示させたいのですがうまくいきません。 どのようにすればいいでしょうか? 教えてください。よろしくお願いします。

みんなの回答

noname#140971
noname#140971
回答No.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)
回答No.1

コンボボックスに表示した項目(2列目以降)をテキストボックスにセットする方法があります。 http://support.microsoft.com/kb/879798/ja

関連するQ&A