- ベストアンサー
アクセスVBAで3つのテキストボックスの連動表示
- アクセス2000のVBAを使用して、3つのテキストボックスを連動させます。
- 「取引銀行」テーブルを作成し、銀行名、支店名、口座番号を入力します。
- テキストボックスに口座番号を入力すると、銀行名を表示するテキストボックスと支店名を表示するテキストボックスに連動表示します。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
口座番号が入力後に、2つのテキストボックスに入力するのであれば、以下のprocedureでできると思います。 Option Compare Database Private Sub テキスト0_AfterUpdate() Me.テキスト2=DLookup("銀行名","取引銀行","口座番号='" & Me.テキスト0.value & "'") Me.テキスト4=DLookup("支店名","取引銀行","口座番号='" & Me.テキスト0.value & "'") End Sub パフォーマンスが悪い場合には以下のようにしてください。 Option Compare Database Private Sub テキスト0_AfterUpdate() Dim strText As String Dim rs As recordset strText = "select 銀行名,支店名 FROM 取引銀行 where 口座番号 ='" & Me.テキスト0.value & "'" Set rs = CurrentDb.Openrecordset(strText, dbOpenSnapshot)'参照専用レコードセット Me.テキスト2=rs("銀行名") Me.テキスト4=rs("支店名") End Sub RecordSource:フォーム、レポートの元になるレコードの集合、つまりはテーブル、クエリーなど ControlSourse:フォーム、レポートのコントロールに表示するためのRecordSourceのフィールドのこと(非連結の場合にはControlSourseは値が存在する関数式でも可) と思っておけば良いのでは。 値集合タイプ、値集合ソース:リストボックス、コンボボックスで表示に使用するソースで、テーブル、クエリーのレコード形式、もしくは、値リストのこと。値リストを指定すると値を並べて記載することでレコード形式に読み込んでくれる。 したがって、一つの値しか表示できないテキストボックスには上記プロパティは必要ないことになるので表示されません。