ray88’s diary

お仕事で困ったとき用の自分用の覚書

Access Dlookup関数 テーブルやクエリよりレコード検索し指定したフィールドの値を返す

【書式】

Dlookup(フィールド名 , テーブル名 , 抽出条件)

(例)

Dim strName As String
Dim intAge As Integer
strName = DLookup("社員名","T_社員名簿","社員番号 = 1002")
intAge = DLookup("年齢","T_社員名簿","社員番号 = 1002")

※「抽出条件」を省略したり、1レコードに絞り込めない抽出条件を指定した場合は対象レコードの中から先頭レコードが選ばれる。
その結果、誤った値が戻り値となることがあるので注意すること。

(例2)フォームのテキストボックスの値を元に条件設定する場合。

Dim strName As String
Dim intAge As Integer
Me.txb_employeeNum.SetFocus
strName = DLookup("社員名","T_社員名簿","社員番号 = " & Me.txb_employeeNum.Text)
intAge = DLookup("年齢","T_社員名簿","社員番号 = " & Me.txb_employeeNum.Text)

※テキストボックスの値を取得するにはテキストボックスにフォーカスがあたっていないと値を取得できない。