Application.DCount-Methode (Access)

Verwenden Sie die DCount-Funktion , um die Anzahl der Datensätze zu bestimmen, die sich in einer angegebenen Gruppe von Datensätzen (einer Domäne) befinden.

Syntax

Ausdruck. DCount (Expr, Domain, Criteria)

expression Eine Variable, die ein Application-Objekt darstellt.

Parameter

Name Erforderlich/Optional Datentyp Beschreibung
Expr Erforderlich String Ein Ausdruck, der das Feld identifiziert, für das Sie Datensätze zählen möchten. Er kann ein Zeichenfolgenausdruck sein, der ein Feld in einer Tabelle oder Abfrage kennzeichnet, oder ein Ausdruck, der eine Berechnung mit Daten in dem Feld durchführt. In expr können Sie den Namen eines Felds in einer Tabelle, ein Steuerelement in einem Formular, eine Konstante oder eine Funktion einschließen. Wenn expr eine Funktion enthält, kann sie entweder integriert oder benutzerdefinierte sein, aber keine andere Domänenaggregat- oder SQL-Aggregatfunktion.
Domäne Erforderlich String Ein Zeichenfolgenausdruck, der den Satz von Datensätzen identifiziert, der die Domäne darstellt. Es kann sich dabei um einen Tabellennamen oder einen Abfragenamen für eine Abfrage handeln, die keinen Parameter benötigt.
Criteria Optional Variant Ein Zeichenfolgenausdruck, den Sie optional angeben können, um den Datenbereich einzuschränken, für den die DCount-Funktion ausgeführt wird. Beispielsweise ist criteria oft äquivalent mit der WHERE-Klausel in einem SQL-Ausdruck, ohne das Wort WHERE. Wird das Argument criteria nicht angegeben, so berechnet DCount das Argument expr für die gesamte Domäne. Jedes Feld, das in Kriterien enthalten ist, muss ebenfalls ein Feld in der Domäne sein; Andernfalls gibt die DCount-Funktion einen Null-Wert zurück.

Rückgabewert

Variant

Hinweise

Sie können DCount z. B. in einem Modul verwenden, um die Anzahl von Datensätzen in einer Tabelle "Bestellungen" zu ermitteln, die die an einem bestimmten Tag bestellten Artikel enthalten.

Verwenden Sie die DCount-Funktion zum Zählen der Datensätze in einer Domäne, wenn Sie die eigentlichen Werte nicht kennen müssen. Obwohl das Argument expr eine Berechnung über ein Feld durchführen kann, ermittelt DCount nur die Anzahl von Datensätzen. Der Wert einer beliebigen mit expr durchgeführten Berechnung steht nicht zur Verfügung.

Verwenden Sie DCount in einem berechneten Steuerelement, wenn Sie "Kriterien" angeben möchten, um den Datenbereich einzuschränken, in dem die Funktion ausgeführt wird. Wenn Sie z. B. die Anzahl von Bestellungen anzeigen möchten, die nach Kalifornien versendet werden sollen, legen Sie die ControlSource-Eigenschaft eines Textfelds auf den folgenden Ausdruck fest:

=DCount("[OrderID]", "Orders", "[ShipRegion] = 'CA'")

Wenn Sie einfach alle Datensätze in der Domäne zählen möchten, ohne Einschränkungen anzugeben, verwenden Sie die Count-Funktion . Die Count -Funktion wurde optimiert, um das Zählen von Datensätzen in Abfragen zu beschleunigen. Verwenden Sie in einer Abfrage die Count -Funktion anstelle von DCount, und legen Sie optionale Kriterien fest, um das Ergebnis einzuschränken.

Verwenden Sie die DCount -Funktion, wenn Sie Datensätze in einer Domäne aus einem Codemodul, einem Makro oder in einem berechneten Steuerelement zählen müssen.

Verwenden Sie die DCount-Funktion , um die Anzahl der Datensätze zu zählen, die ein bestimmtes Feld enthalten, das sich nicht in der Datensatzquelle befindet, auf der Ihr Formular oder Bericht basiert. Sie können z. B. die Anzahl von Bestellungen aus der Tabelle "Bestellungen" in einem berechneten Steuerelement eines Formulars anzeigen, das auf der Tabelle "Artikel" basiert.

Die DCount-Funktion zählt keine Datensätze, die NULL-Werte in dem Feld enthalten, auf das von expr verwiesen wird, es sei denn , expr ist das Sternchen (*) Platzhalterzeichen. Wenn Sie ein Sternchen verwenden, berechnet Null die Gesamtzahl aller Datensätze einschließlich derjenigen, die DCount -Felder enthalten. Das folgende Beispiel berechnet die Anzahl von Datensätzen in der Tabelle Null.

intX = DCount("*", "Orders")

Wenn domäne eine Tabelle mit einem Primärschlüssel ist, können Sie auch die Gesamtzahl der Datensätze zählen, indem Sie expr auf das Primärschlüsselfeld festlegen, da im Primärschlüsselfeld nie null vorhanden ist.

Wenn expr mehrere Felder kennzeichnet, trennen Sie die Feldnamen durch einen Verbindungsoperator, wie z. B. ein UND-Zeichen (&), oder den Additions-Operator (+) voneinander. Wenn Sie zum Trennen der Felder ein UND-Zeichen verwenden, gibt die DCount-Funktion die Anzahl von Datensätzen zurück, die in einem der aufgelisteten Felder Werte enthalten. Wenn Sie den Additions-Operator verwenden, gibt DCount nur die Anzahl von Datensätzen zurück, die in allen der aufgeführten Felder Daten enthalten. Das folgende Beispiel zeigt die Wirkung der einzelnen Operatoren bei Verwendung mit einem Feld, das in allen Datensätzen Daten enthält (Firma), und mit einem Feld, das keine Daten enthält (Region).

intW = DCount("[ShipName]", "Orders") 
intX = DCount("[ShipRegion]", "Orders") 
intY = DCount("[ShipName] + [ShipRegion]", "Orders") 
intZ = DCount("[ShipName] & [ShipRegion]", "Orders")

Hinweis

Das UND-Zeichen wird als Operator zum Trennen von Zeichenfolgen empfohlen. Verwenden Sie den Additions-Operator ausschließlich für numerische Additionen, es sei denn, Sie möchten mithilfe eines Ausdrucks Nulls verteilen.

Beispiel

Die folgende Funktion gibt die Anzahl von Bestellungen zurück, die nach einem angegebenen Versanddatum in ein bestimmtes Land oder in eine bestimmte Region versandt wurden. Die Domäne ist eine Bestellungen-Tabelle.

Public Function OrdersCount(ByVal strCountry As String, _ 
                            ByVal dteShipDate As Date) As Integer 
 
    OrdersCount = DCount("[ShippedDate]", "Orders", _ 
                  "[ShipCountry] = '" & strCountry & _ 
                  "' AND [ShippedDate] > #" & dteShipDate & "#") 
End Function

Die folgenden Beispiele zeigen, wie Sie verschiedene Typen von Kriterien mit der Funktion DCount verwenden.

    ' ***************************
    ' Typical Use
    ' Numerical values. Replace "number" with the number to use.
    variable = DCount("[FieldName]", "TableName", "[Criteria] = number")

    ' Strings.
    ' Numerical values. Replace "string" with the string to use.
    variable = DCount("[FieldName]", "TableName", "[Criteria]= 'string'")

    ' Dates. Replace "date" with the string to use.
    variable = DCount("[FieldName]", "TableName", "[Criteria]= #date#")
    ' ***************************

    ' ***************************
    ' Referring to a control on a form
    ' Numerical values
    variable = DCount("[FieldName]", "TableName", "[Criteria] = " & Forms!FormName!ControlName)

    ' Strings
    variable = DCount("[FieldName]", "TableName", "[Criteria] = '" & Forms!FormName!ControlName & "'")

    ' Dates
    variable = DCount("[FieldName]", "TableName", "[Criteria] = #" & Forms!FormName!ControlName & "#")
    ' ***************************

    ' ***************************
    ' Combinations
    ' Multiple types of criteria
    variable = DCount("[FieldName]", "TableName", "[Criteria1] = " & Forms![FormName]![Control1] _
             & " AND [Criteria2] = '" & Forms![FormName]![Control2] & "'" _
            & " AND [Criteria3] =#" & Forms![FormName]![Control3] & "#")
    
    ' Use two fields from a single record.
    variable = DCount("[LastName] & ', ' & [FirstName]", "tblPeople", "[PrimaryKey] = 7")
            
    ' Expressions
    variable = DCount("[Field1] + [Field2]", "tableName", "[PrimaryKey] = 7")
    
    ' Control Structures
    variable = DCount("IIf([LastName] Like 'Smith', 'True', 'False')", "tableName", "[PrimaryKey] = 7")
    ' ***************************

Support und Feedback

Haben Sie Fragen oder Feedback zu Office VBA oder zu dieser Dokumentation? Unter Office VBA-Support und Feedback finden Sie Hilfestellung zu den Möglichkeiten, wie Sie Support erhalten und Feedback abgeben können.