DCOUNT関数 : Access(アクセス)

Access関数へ

DCOUNT関数とは、指定されたテーブルかクエリのフィールドから条件にマッチした個数を返します。

作成したソフトを無料ダウンロードできます。

スポンサーリンク



DCOUNT関数の構文

Dcount(フィールド , テーブル名かクエリ名 , 抽出条件)
  • フィールド : 対象のフィールド名を指定します。「*」にするとレコード数が返ります。
  • 抽出条件 : 書式はクエリの抽出条件と同じです。

DCOUNT関数の使用例サンプル

下記の47都道府県の人口テーブルを使用します。
都道府県の人口テーブル

DCOUNT関数をフォームとVBAで使用したサンプル

下記のフォームを作成しました。
テキストボックスに抽出条件を入力し、検索ボタンで開始します。
DCOUNT関数を使用したフォーム

抽出条件が入力されていない場合は、下のようなエラーメッセージを表示します。
抽出条件が入力されていない場合のエラー表示

「検索する都道府県名の一部の文字」を入力すると、入力した文字が含まれる都道府県数を返します。
「川県」と付くのは3件だと表示されています。
文字で抽出した結果

下側は、数値で抽出します。
数値を入力すると、人口がそれ以上の都道府県数を返します。
100万人以上は38件だと表示されています。
数値で抽出した結果

DCOUNT関数を使ったVBAサンプルコード

Option Compare Database

Private Sub コマンド2_Click()
    Dim ln As Long
    
    If Nz(Me!テキスト0, "") = "" Then
        MsgBox "検索する文字を入力してください。"
        Me!テキスト0.SetFocus
        Exit Sub
    End If
    
    ln = DCount("都道府県", "T-人口", "都道府県 Like '*" & Me!テキスト0 & "*'")
    MsgBox ln & "件見つかりました"
    
End Sub

Private Sub コマンド8_Click()
    Dim ln As Long
    
    If Nz(Me!テキスト6, 0) = 0 Then
        MsgBox "調べる人口を入力してください。"
        Me!テキスト0.SetFocus
        Exit Sub
    End If
    
    ln = DCount("人口", "T-人口", "人口>=" & Me!テキスト6)
    MsgBox "人口が" & Me!テキスト6 & "人以上の都道府県は、" & ln & "件見つかりました"

End Sub

DCOUNT関数をクエリで使用したサンプル

上のVBAと同じで、都道府県名に「川県」が付く数をカウントします。
式1: DCount("都道府県","T-人口","都道府県 Like '*川県*'")

人口が100万人以上の都道府県をカウントします。
式2: DCount("人口","T-人口","人口>=1000000")
DCOUNT関数を使用したクエリ

VBAと同じ実行結果になっています。
VBAと同じ実行結果

DCOUNT関数サンプルファイルの無料ダウンロード

func-dcount.zip (Access2013 64Bit版 、Access2016 32Bit版 で動作確認しています)

便利技・応用例

DCOUNTを複数条件で使用するには - 「AND」「OR」「Between And」
DCOUNTを使って連番を作成する - クエリで作成
スポンサーリンク


Copyright (c) Microsoft-Access.net All rights reserved.