Applies ToAccess für Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

Sie können die DCount-Funktion verwenden, um die Anzahl der Datensätze zu ermitteln, die in einer bestimmten Gruppe von Datensätzen (einer Domäne) enthalten sind. Verwenden Sie die DCount-Funktion in einem VBA-Modul (Visual Basic for Applications), Makro, Abfrageausdruck oder Berechnetes Steuerelement.

Sie können die DCount-Funktion beispielsweise in einem Modul verwenden, um die Anzahl der Datensätze aus einer Tabelle für Bestellungen zurückzugeben, die Bestellungen entsprechen, die an einem bestimmten Datum aufgegeben wurden.

Syntax

DCount ( Ausdruck , Domäne [, Kriterien] )

Die Syntax der DCount-Funktion hat die folgenden Argumente:

Argument

Beschreibung

Ausdruck

Erforderlich. Ein Ausdruck, der das Feld angibt, für das Datensätze gezählt werden sollen. Es kann sich um einen Zeichenfolgenausdruck handeln, der ein Feld in einer Tabelle oder Abfrage angibt, oder um einen Ausdruck, der für Daten in diesem Feld eine Berechnung durchführt. Sie können in Ausdruck den Namen eines Felds in einer Tabelle, ein Steuerelement in einem Formular, eine Konstante oder eine Funktion einfügen. Wenn Ausdruck eine Funktion enthält, kann es sich um eine integrierte oder um eine benutzerdefinierte Funktion handeln, aber nicht um ein anderes Domänenaggregat oder eine SQL-Aggregatfunktion.

Domäne

Erforderlich. Ein Zeichenfolgenausdruck, der die Gruppe von Datensätzen angibt, die die Domäne bilden. Es kann sich um einen Tabellennamen oder um einen Abfragenamen für eine Abfrage handeln, die keinen Parameter erfordert.

Kriterien

Optional. Ein Zeichenfolgenausdruck, der verwendet wird, um den Datenbereich einzuschränken, für den die DCount-Funktion ausgeführt wird. Kriterien entsprechen z . B. häufig der WHERE-Klausel in einem SQL-Ausdruck ohne das Wort WHERE. Wenn Kriterien nicht angegeben werden, wertet die DCount-Funktionexpr für die gesamte Domäne aus. 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.

Hinweise

Verwenden Sie die DCount-Funktion, um die Anzahl der Datensätze in einem Bereich (Domäne) zu zählen, wenn Sie deren einzelne Werte nicht wissen müssen. Das Argument Ausdruck kann zwar eine Berechnung für ein Feld ausführen, die DCount-Funktion ermittelt aber lediglich die Anzahl von Datensätzen. Der Wert einer Berechnung, die von Ausdruck ausgeführt wurde, ist nicht verfügbar.

Verwenden Sie die DCount-Funktion in einem berechneten Steuerelement, wenn Sie Kriterien zum Beschränken des Datenbereichs angeben möchten, für den die Funktion ausgeführt wird. Wenn Sie beispielsweise die Anzahl von Bestellungen anzeigen möchten, die nach Kalifornien zu liefern sind, legen Sie die ControlSource-Eigenschaft (Steuerelementinhalt) eines Textfelds auf den folgenden Ausdruck fest:

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

Wenn Sie einfach alle Datensätze in Domäne zählen möchten, ohne Einschränkungen anzugeben, verwenden Sie die Count-Funktion.

Tipp Die Count-Funktion wurde optimiert, um das Zählen von Datensätzen in Abfragen zu beschleunigen. Verwenden Sie in einem Abfrageausdruck die Count-Funktion anstelle der DCount-Funktion, und legen Sie optionale Kriterien fest, um jegliche Einschränkungen für die Ergebnisse zu erzwingen. Verwenden Sie die DCount-Funktion, wenn Sie Datensätze in einem Bereich (Domäne) aus einem Codemodul oder Makro oder in einem berechneten Steuerelement zählen müssen.

Sie können die DCount-Funktion verwenden, um die Anzahl von Datensätzen zu zählen, die ein bestimmtes Feld enthalten, das nicht zu der Datensatzquelle gehört, auf dem Ihr Formular oder Bericht basiert. Beispielsweise könnten Sie die Anzahl von Bestellungen in der Tabelle für Bestellungen (Orders) in einem berechneten Steuerelement auf einem Formular anzeigen, das auf der Tabelle für Produkte (Products) basiert.

Die DCount-Funktion zählt keine Datensätze, die NULL-Werte in dem Feld enthalten, auf das Ausdruck verweist, es sei denn, Ausdruck ist das Platzhalterzeichen Sternchen (*). Wenn Sie ein Sternchen verwenden, berechnet die DCount-Funktion die Gesamtanzahl der Datensätze, einschließlich der Datensätze, die NULL-Felder enthalten. Im folgenden Beispiel wird die Anzahl von Datensätzen in einer Tabelle für Bestellungen berechnet:

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

Gibt Domäne eine Tabelle mit Primärschlüssel an, können Sie die Gesamtzahl der Datensätze auch zählen, indem Sie Ausdruck auf das Primärschlüsselfeld festlegen, denn in dem Primärschlüsselfeld wird es nie einen Nullwert geben.

Wenn expr mehrere Felder identifiziert, trennen Sie die Feldnamen durch einen Verkettungsoperator, entweder durch ein kaufmännisches und -Zeichen (&) oder den Additionsoperator (+). Wenn Sie zum Trennen der Felder ein kaufmännisches Und-Zeichen verwenden, gibt die DCount-Funktion die Anzahl der Datensätze zurück, die Daten in einem der aufgelisteten Felder enthalten. Wenn Sie den Additionsoperator verwenden, gibt die DCount-Funktion nur die Anzahl der Datensätze zurück, die Daten in allen aufgelisteten Feldern enthalten. Im folgenden Beispiel werden die Auswirkungen der einzelnen Operatoren veranschaulicht, wenn es mit einem Feld verwendet wird, das Daten in allen Datensätzen (ShipName) enthält, und einem Feld, das keine Daten enthält (ShipRegion).

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

Hinweis:  Das kaufmännische Und-Zeichen ist der bevorzugte Operator zum Verketten von Zeichenfolgen. Sie sollten den Additionsoperator ausschließlich für numerische Additionen verwenden, es sei denn, Sie möchten Nullwerte explizit durch einen Ausdruck weitergeben.

Bei Verwendung dieser Funktion werden nicht gespeicherte Änderungen an Datensätzen in Domäne nicht berücksichtigt. Wenn die DCount-Funktion auf den geänderten Werten basieren soll, müssen Sie die Änderungen zunächst speichern, indem Sie auf der Registerkarte Daten unter Datensätze auf Datensatz speichern klicken, damit der Fokus zu einem anderen Datensatz wechselt, oder indem Sie die Update-Methode verwenden.

Abfragebeispiele

Ausdruck

Ergebnisse

SELECT DCount("ProductID","ProductSales";"Discount=0") AS Expr1 FROM ProductSales GROUP BY DCount("ProductID","ProductSales","Discount=0");

Gibt die Anzahl der Werte im Feld "ProductID" der Tabelle "ProductSales" zurück, bei der der Wert "Discount" "0" ist.

SELECT DCount("ProductID","ProductSales","DateofSale=Date()-1") AS YesterdaySale FROM ProductSales GROUP BY DCount("ProductID","ProductSales","DateofSale=Date()-1");

Gibt die Anzahl der Werte im Feld "ProductID" der Tabelle "ProductSales" zurück, wobei "DateofSale" einen Tag vor dem aktuellen Datum ist.

VBA-Beispiel

Hinweis: Die folgenden Beispiele zeigen die Verwendung dieser Funktion in einem VBA-Modul (Visual Basic for Applications). Wenn Sie weitere Informationen zum Arbeiten mit VBA wünschen, wählen Sie Entwicklerreferenz in der Dropdownliste neben Suchen aus, und geben Sie einen oder mehrere Begriffe in das Suchfeld ein.

Die folgende Funktion gibt die Anzahl von Bestellungen zurück, die am angegebenen Lieferdatum (dteShipDate) in ein angegebenes Land (strCountry) geliefert wurden. Der Bereich (Domäne) ist eine Tabelle für Bestellungen.

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

Verwenden Sie die folgende Codezeile im Direktfenster, um die Funktion aufzurufen:

:OrdersCount "UK", #1/1/96#

Benötigen Sie weitere Hilfe?

Möchten Sie weitere Optionen?

Erkunden Sie die Abonnementvorteile, durchsuchen Sie Trainingskurse, erfahren Sie, wie Sie Ihr Gerät schützen und vieles mehr.

In den Communities können Sie Fragen stellen und beantworten, Feedback geben und von Experten mit umfassendem Wissen hören.