DAvg-Funktion

Gilt für
Access für Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

Sie können die DAvg-Funktion verwenden, um den Durchschnitt einer Gruppe von Werten in einer angegebenen Gruppe von Datensätzen (einer Domäne) zu berechnen. Verwenden Sie die Funktion DAvg in einem VBA-Modul (Visual Basic for Applications), in einem Makro, in einem Abfrageausdruck oder in einem berechneten Steuerelement.

Sie können die DomMittelwert-Funktion beispielsweise in der Zeile "Kriterien" einer Auswahlabfrage für Frachtkosten verwenden, um die Ergebnisse auf Datensätze zu beschränken, in denen die Frachtkosten den Mittelwert übersteigen. Sie können auch einen Ausdruck, der die DomMittelwert-Funktion enthält, in einem berechneten Steuerelement verwenden, um den Durchschnittswert vorheriger Bestellungen neben dem Wert einer neuen Bestellung anzuzeigen.

Syntax

DAvg(expr, domain [, criteria] )

Die Syntax der DomMittelwert-Funktion weist die folgenden Argumente auf:

Argument Beschreibung
Ausdruck Erforderlich. Ein Ausdruck, der das Feld mit den numerischen Daten identifiziert, für die ein Mittelwert erstellt werden soll. Dabei kann es sich um einen Zeichenfolgenausdruck handeln, der ein Feld in einer Tabelle oder Abfrage identifiziert, oder es kann sich um einen Ausdruck handeln, der eine Berechnung für Daten in diesem Feld ausfü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. 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 DAvg-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 DAvg-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 DAvg-Funktion einen Null-Wert zurück.

    

Anmerkungen

Datensätze, die NULL-Werte enthalten, werden nicht in die Berechnung des Mittelwerts aufgenommen.

Unabhängig davon, ob Sie die DAvg-Funktion in einem Makro oder Modul, in einem Abfrageausdruck oder in einem berechneten Steuerelement verwenden, müssen Sie das Argument criteria sorgfältig erstellen, um sicherzustellen, dass es ordnungsgemäß ausgewertet wird.

Sie können die DomMittelwert-Funktion verwenden, um Kriterien in der Zeile "Kriterien" einer Abfrage anzugeben. Nehmen Sie beispielsweise an, dass Sie eine Liste aller Artikel anzeigen möchten, deren Bestellmenge die durchschnittliche Bestellmenge übersteigt. Sie können eine Abfrage für die Tabellen "Bestellungen", "Bestelldetails" und "Produkte" erstellen, die jeweils die Felder "Produktname" und "Menge" enthalten, indem Sie den folgenden Ausdruck in die Zeile "Kriterien" unterhalb des Felds "Menge" einfügen:

>DAvg("[Quantity]", "Orders")

Sie können die DAvg-Funktion auch in einem berechneten Feldausdruck in einer Abfrage oder in der Zeile Aktualisieren auf einer Updateabfrage verwenden.

Hinweis

Sie können entweder die Funktion DAvg oder Avg in einem berechneten Feldausdruck in einer Summenabfrage verwenden. Wenn Sie die DomMittelwert-Funktion verwenden, wird für die Werte vor dem Gruppieren der Daten ein Mittelwert berechnet. Beim Verwenden der Mittelwert-Funktion werden die Daten zunächst gruppiert, bevor für die Werte im Feldausdruck ein Mittelwert berechnet wird.

Verwenden Sie die DomMittelwert-Funktion in einem berechneten Steuerelement, wenn Sie "Kriterien" zum Beschränken des Datenbereichs angeben möchten, für den die DomMittelwert-Funktion ausgeführt wird. Legen Sie für die Steuerelementinhalt-Eigenschaft eines Textfelds beispielsweise den folgenden Ausdruck fest, um die durchschnittlichen Frachtkosten für Lieferungen nach Kalifornien anzuzeigen:

=DAvg("[Freight]", "Orders", "[ShipRegion] = 'CA'")

Wenn Sie einfach nur den Durchschnitt aller Datensätze in der Domäne verwenden möchten, verwenden Sie die Avg-Funktion .

Sie können die DomMittelwert-Funktion in einem Modul oder Makro oder in einem berechneten Steuerelement in einem Formular verwenden, wenn sich ein anzuzeigendes Feld nicht in der Datensatzquelle befindet, auf der das Formular basiert. Angenommen, ein Formular basiert auf der Tabelle "Bestellungen" und Sie möchten das Feld "Menge" aus der Tabelle "Bestelldetails" einfügen, damit die durchschnittliche Anzahl von Artikeln angezeigt wird, die von einem bestimmten Kunden bestellt wurde. Sie können die DomMittelwert-Funktion verwenden, um diese Berechnung durchzuführen und die Daten im Formular anzuzeigen.

Tipps

  • Wenn Sie die DomMittelwert-Funktion in einem berechneten Steuerelement verwenden, empfiehlt es sich, das Steuerelement im Formularkopf oder Formularfuß zu platzieren, damit der Wert für dieses Steuerelement nicht jedes Mal neu berechnet wird, wenn Sie zu einem neuen Datensatz wechseln.
  • Wenn der Datentyp des Felds, von dem expr abgeleitet wird, eine Zahl ist, gibt die DAvg-Funktion einen Double-Datentyp zurück. Fügen Sie zur Leistungsverbesserung eine Konvertierungsfunktion für den Datentyp in den Ausdruck ein, wenn Sie die DomMittelwert-Funktion in einem berechneten Steuerelement verwenden.
  • Obwohl Sie die DAvg-Funktion verwenden können, um den Durchschnitt der Werte in einem Feld in einer Fremdtabelle zu bestimmen, kann es effizienter sein, eine Abfrage zu erstellen, die alle benötigten Felder enthält, und dann das Formular oder den Bericht auf dieser Abfrage zu basieren.

Hinweis

Nicht gespeicherte Änderungen an Datensätzen in der Domäne sind nicht enthalten, wenn Sie diese Funktion verwenden. Wenn die DomMittelwert-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 Methode Aktualisieren verwenden.

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 durchschnittlichen Frachtkosten für Bestellungen zurück, die an oder nach einem bestimmten Datum versendet wurden. Der Bereich (Domäne) ist eine Tabelle für Bestellungen. Das Argument kriterien schränkt den resultierenden Satz von Datensätzen basierend auf dem angegebenen Land/der angegebenen Region und dem Versanddatum ein. Beachten Sie, dass die Schlüsselwort (keyword) AND in der Zeichenfolge enthalten ist, um die mehrere Felder im Argument criteria zu trennen. Alle Datensätze, die in der Berechnung der DAvg-Funktion enthalten sind, weisen diese beiden Kriterien auf.

Public Function AvgFreightCost _
    (ByVal strCountryRegion As String, _
     ByVal dteShipDate As Date) As Double
    AvgFreightCost = DAvg("[Freight]", "Orders", _
        "[ShipCountryRegion] = '" & strCountryRegion & _
        "'AND [ShippedDate] >= #" & dteShipDate & "#")
End Function

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

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