定義域集計関数【Access】

関数【Access_Excel】 05.関数
関数【Access_Excel】

DSum関数

テーブルやクエリのあるフィールドに対する合計値を返します。合計の対象となるレコードの抽出条件を指定することも可能。
【書式】
DSum(フィールド名,テーブル名,[抽出条件])

Sub DSum_1()
    MsgBox DSum("年齢", "T_会員名簿") 
    MsgBox DSum("年齢", "T_会員名簿", "年齢>=30") 
End Sub

DCount関数

テーブルやクエリのレコード数を返します。合計の対象となるレコードの抽出条件を指定することも可能。
【書式】
DCount(フィールド名,テーブル名,[抽出条件])

Sub DCount_1()
    MsgBox DCount("年齢", "T_会員名簿") '対象データは年齢がNULLを除きます。
    MsgBox DCount("*", "T_会員名簿")     '全レコード数
    MsgBox DCount("年齢", "T_会員名簿", "年齢>=30") '対象データは年齢が30以上のレコード
End Sub

DLookup関数

テーブルやクエリからレコードを検索し指定したフィールドを返します。
【書式】
DLookup(フィールド名,テーブル名,[抽出条件])

Sub DLookup_1()
    MsgBox DLookup("会員名", "T_会員名簿")
    MsgBox DLookup("会員名", "T_会員名簿", "会員番号 = 30")
    MsgBox DLookup("会員名", "T_会員名簿", "会員番号 = 30 AND 年齢=25")
    MsgBox Nz(DLookup("会員名", "T_会員名簿", "会員番号 = 100"), "対象データなし")
  '※NZ関数は変換関数で説明します。
    '※ここでは対象データが存在しない場合は"対象データなし"と表示します。
    '※NZ関数を使用しない場合はエラーが発生します。
End Sub

対象データによって下記のような状況になります。
①対象データが1件の場合:対象データの会員名を返します。
②対象データが複数件の場合:1件目の会員名を返します。
③対象データが存在しない場合:エラーが発生します。
               サンプルではNZ関数でエラーを回避しています。

DMax関数/DMin関数

DMaxはテーブルやクエリの指定したフィールドの最大値、DMinは最小値を表示します。
【書式】
DMax(フィール名,テーブル名,[抽出条件])
DMin(フィール名,テーブル名,[抽出条件])

Sub DMax_DMin()
    MsgBox DMax("年齢", "T_会員名簿")
    MsgBox DMin("年齢", "T_会員名簿","年齢>=30")
End Sub

DFirst関数/DLast関数

DFirstは対象データの先頭レコードを、DLastは対象データの最後のレコードを返します。
【書式】
DFirst(フィール名,テーブル名,[抽出条件])
DLast(フィール名,テーブル名,[抽出条件])

Sub DFirst_DLast()
    MsgBox DFirst("年齢", "T_会員名簿")
    MsgBox DLast("年齢", "T_会員名簿","年齢>=30")
End Sub

次は変換関数【Access/Excel】です。

コメント

タイトルとURLをコピーしました