DCOUNTを複数条件で使用するには : Access(アクセス)

便利技・応用例へ

DCOUNTを複数条件で使用するには、条件を「AND」や「OR」などの論理関数でつなげて指定します。範囲を指定する場合は、「Between And」を使います。

DCOUNT関数についてはここを参照してください。
スポンサーリンク


下の47都道府県の、人口が登録されたテーブルからカウントします。
47都道府県の、人口が登録されたテーブル

■ DCOUNTを複数条件で使用したサンプル

下のようなフォームを作成しました。
都道府県名に入力した文字の一部が含まれ、人口が指定人数以上の都道府県数をカウントします。
DCOUNTを複数条件で検索

下では「川県」が付いて、100万人以上の都道府県は2件でした。
「川県」が付いて、100万人以上の都道府県

■ サンプルフォームのVBAコード

Option Compare Database
Option Explicit

Private Sub コマンド8_Click()
    Dim ln As Long
    
    If Nz(Me!テキスト0, "") = "" Then
        MsgBox "検索する文字を入力してください。"
        Me!テキスト0.SetFocus
        Exit Sub
    End If

    
    If Nz(Me!テキスト6, 0) = 0 Then
        MsgBox "調べる人口を入力してください。"
        Me!テキスト0.SetFocus
        Exit Sub
    End If
    
    ln = DCount("人口", "T-人口", "都道府県 Like '*" & Me!テキスト0 & "*' and 人口>=" & Me!テキスト6)
    MsgBox ln & "件見つかりました"

End Sub

■ DCOUNTを範囲指定で使用したサンプル

人口の範囲を入力し検索します。
人口の範囲を入力し検索する

人口が100万人以上で、200万人以下の都道府県が21件見つかりました。
人口が100万人以上で、200万人以下の都道府県

■ サンプルフォームのVBAコード

Option Compare Database
Option Explicit


Private Sub コマンド8_Click()
    Dim ln As Long
    
    If Nz(Me!テキスト0, 0) = 0 Then
        MsgBox "何人以上か入力してください。"
        Me!テキスト0.SetFocus
        Exit Sub
    End If

    
    If Nz(Me!テキスト6, 0) = 0 Then
        MsgBox "何人以下か入力してください。"
        Me!テキスト6.SetFocus
        Exit Sub
    End If
    
    ln = DCount("人口", "T-人口", "人口 Between " & Me!テキスト0 & " and " & Me!テキスト6)
    MsgBox ln & "件見つかりました"

End Sub
スポンサーリンク


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