以前調べたら偶然どこかのサイトに書いてあったが、最近手法忘れたので
再度調べたものの簡易にまとめてあるサイトが意外と見つかりにくい為、メモ書き。
【前提条件】
・ここでは最初に条件の値を入力するテキストボックス名を「参照元」としている。
・カラムfirstNumに対応するhogeをほかのテキストボックスに出力したい。
・カラムfirstNumは一意であるとする。
・出力先のテキストボックス(コンボボックス等でも編集できる設定なら問題ない)の
名前は「参照先」とする。
Private Sub 参照元_LostFocus() ←参照元の値を入れるテキストボックスに設定
Dim db As DAO.Database ←変数dbはデータベース型だと定義して
Dim rcd As DAO.Recordset ←変数rcdはレコードセット型だと定義して
Dim SQL_tantou As String ←入力する参照元の値で抽出するSQLを格納する変数
SQL_tantou = "select hoge from T_sample where firstNum=' " & Me.参照元 & " ' "
↑
フォーカスが外れた時点でfirstNumに入ってる値でテーブルからhogeを抽出するよ
Set db = CurrentDb ←データベースは現在使ってるもの(カレントであるもの)とする
Set rcd = db.OpenRecordset(SQL_tantou, dbOpenDynaset) ←rcdにSQLをセット
Me!参照先 = rcd!hoge ←rcdにダイレクトで挿入したいカラム名指定して
Me!参照先、つまりフォームに属してる参照先に入れるよ
End Sub
本当に雑ではあるがこれで一通りの出力が可能。もちろんカラムを足せば複数の項目を
まとめて出力可能。
おわり
More than 5 years have passed since last update.
Register as a new user and use Qiita more conveniently
- You get articles that match your needs
- You can efficiently read back useful information
- You can use dark theme