Dlookup関数:Access

Access DLookup関数を使うと、テーブルやクエリからデータを検索できます。

見つかると、フィールド値が返ります。
見つからなければ、Null値が返ります。
BackHome BackAccess関数


■ DLookup関数 構文
DLookup(Expr, Domain, Criteria)

■ DLookup関数 引数
Expr : (必須) 戻り値のフィールド名
Domain : (必須) テーブル名またはクエリ名
Criteria : (省略可) WHERE条件式

■ Access実行画面

検索したい文字列をテキストボックスに入力し、「検索」ボタンをクリックします。
Dlookup実行画面

数値を検索した場合
顧客IDを検索した結果

文字列を検索した場合
顧客名を検索した結果

日付を検索した場合
来店日を検索した結果

■ Access VBA 実行コード

Option Compare Database
Option Explicit
Private Sub コマンド6_Click()
    Dim ln As Long
    Dim s1 As String
    If IsNull(Me!テキスト0) Then
        MsgBox "検索する顧客IDを入力してください。"
        Me!テキスト0.SetFocus
    Else
        s1 = Nz(DLookup("顧客名", "顧客マスター", "顧客ID=" & Me!テキスト0), "")
        If s1 = "" Then
            MsgBox "入力された顧客IDは見つかりませんでした。"
        Else
            MsgBox "顧客ID:" & Me!テキスト0 & " は、" & s1 & "さんのIDです。"
        End If
    End If
End Sub
Private Sub コマンド7_Click()
    Dim ln As Long
    Dim s1 As String
    If IsNull(Me!テキスト2) Then
        MsgBox "検索する顧客名を入力してください。"
        Me!テキスト2.SetFocus
    Else
        ln = Nz(DLookup("顧客ID", "顧客マスター", "顧客名='" & Me!テキスト2 & "'"), 0)
        If ln = 0 Then
            MsgBox "入力された顧客名は見つかりませんでした。"
        Else
            MsgBox Me!テキスト2 & "さんの顧客IDは、" & ln & " です。"
        End If
    End If
End Sub
Private Sub コマンド8_Click()
    Dim s1 As String
    If IsNull(Me!テキスト4) Then
        MsgBox "検索する来店日を入力してください。"
        Me!テキスト4.SetFocus
    Else
        s1 = Nz(DLookup("顧客名", "顧客マスター", "来店日=#" & Me!テキスト4 & "#"), "")
        If s1 = "" Then
            MsgBox "入力された来店日に顧客は見つかりませんでした。"
        Else
            MsgBox Format(Me!テキスト4, "yyyy/mm/dd") & "に来店されたのは、" & s1 & " さんです。"
        End If
    End If
End Sub

BackHome BackAccess関数

Copyright(C) FeedSoft