Nz関数:Access

Access Nz関数は指定した値がNULLの時、設定した別の値を返します。

(NULL(ヌル)とは、「値が認識できない」「値が存在しない」という意味です。)
返す値は、バリアント型なので文字列・数値・日付などほぼ何でも返ります。
NULLになりそうな部分は、このNz関数を使用しエラーを回避するようにします。

BackHome BackAccess関数


■ 構文
Nz(Value, ValueIfNull)

■ 引数
Value : (必須) バリアント型 (Variant) の変数を指定します
ValueIfNull : (省略可) ValueがNULLの場合に返す値をバリアント型 (Variant)で設定します

■ 変数がNULLかどうかチェック
n2=NULLなので、替わりに「123」が返りました
Nz関数を変数で使用

顧客ID=10 の初回来店日はNULLでないので、日付が返りました
Nz関数をDlookUp関数で使用

顧客ID=11 の初回来店日はNULLなので、0が返り、「来店はありません」と表示されました。
Nz関数をDlookUp関数で使用

■ Access VBA 実行コード

Option Compare Database
Private Sub コマンド0_Click()
    Dim n1 As Variant
    Dim n2 As Variant
    Dim n3 As Variant
    '変数がNULLならば置き換え
    n2 = Null
    n1 = Nz(n2, 123)
    MsgBox "n1は " & n1
    'データがNULLならば置き換え
    n1 = Nz(DLookup("初回来店日", "顧客マスター", "顧客ID=10"), 0)
    If n1 = 0 Then
        MsgBox "顧客ID=10 の来店はありません"
    Else
        MsgBox "顧客ID=10 の初回来店日は " & n1
    End If
    n1 = Nz(DLookup("初回来店日", "顧客マスター", "顧客ID=11"), 0)
    If n1 = 0 Then
        MsgBox "顧客ID=11 の来店はありません"
    Else
        MsgBox "顧客ID=11 の初回来店日は " & n1
    End If
End Sub

BackHome BackAccess関数

Copyright(C) FeedSoft