Application.DAvg-Methode (Access)

Verwenden Sie die DomMittelwert-Funktion , um den Mittelwert einer Gruppe von Werten in einer bestimmten Gruppe von Datensätzen (einer Domäne) zu berechnen.

Syntax

Ausdruck verwendet werden. DAvg (Ausdr, Domäne, Kriterien)

expression Eine Variable, die ein Application-Objekt darstellt.

Parameter

Name Erforderlich/Optional Datentyp Beschreibung
Expr Erforderlich String Ein Ausdruck, der das Feld identifiziert, das die numerischen Daten enthält, deren Mittelwert berechnet werden soll. 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 Ausdr_ können Sie den Namen eines Felds in eine Tabelle, eines Steuerelements in ein Formular, einer Konstante oder einer Funktion einfügen. Wenn Ausdr eine Funktion enthält, kann sie entweder integriert oder benutzerdefiniert sein, aber kein anderes Domänenaggregat oder SQL-Aggregatfunktion.
Domäne Erforderlich String Ein Zeichenfolgenausdruck, der die Gruppe der Datensätze angibt, die die Domäne bilden. 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 DAvg-Funktion ausgeführt wird. Kriterien entspricht z . B. häufig der WHERE-Klausel in einem SQL-Ausdruck ohne das Wort WHERE. Wenn Kriterien weggelassen werden, wertet die DAvg-FunktionAusdr für die gesamte Domäne aus. Jedes Feld, das in Kriterien enthalten ist, muss auch ein Feld in Domäne sein. Andernfalls gibt die DomMittelwert-FunktionNull zurück.

Rückgabewert

Variant

Hinweise

Sie können z. B. die DomMittelwert-Funktion in der Kriterienzeile einer Auswahlabfrage zu Frachtkosten verwenden, um die Ergebnisse auf die Datensätze zu beschränken, bei denen die Frachtkosten den Durchschnitt übersteigen. Alternativ können Sie einen Ausdruck verwenden, der die DomMittelwert-Funktion in einem berechneten Steuerelement enthält, und den Durchschnittswert vorheriger Aufträge neben dem Wert eines neuen Auftrags anzeigen.

Datensätze, die Null-Werte enthalten, werden in die Mittelwertberechnung nicht einbezogen.

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

Verwenden Sie die DomMittelwert-Funktion , um Kriterien in der Zeile Kriterien einer Abfrage anzugeben. Angenommen, Sie möchten eine Liste aller bestellten Produkte in Mengen anzeigen, deren Anzahl die durchschnittliche Bestellmenge übersteigt. Sie können eine Abfrage für die Tabellen "Bestellung", "Bestelldetails" und "Artikel" erstellen und die Felder " Artikelname " und " Menge " mit dem folgenden Ausdruck in die Zeile "Kriterien" unterhalb des Felds "Menge" einfügen:

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

Sie können die DomMittelwert-Funktion auch innerhalb eines berechneten Feldausdrucks in einer Abfrage oder in der Zeile "Aktualisieren bis " einer Aktualisierungsabfrage verwenden.

Hinweis

Verwenden Sie entweder die DomMittelwert-Funktion oder die Mittelwert-Funktion in einem berechneten Feldausdruck in einer Gesamtsummenabfrage. Wenn Sie DAvg verwenden, werden die Mittelwerte berechnet, bevor die Daten gruppiert werden. Wenn Sie Avg verwenden, werden die Daten gruppiert, bevor der Mittelwert über die Werte im Feldausdruck berechnet wird.

Verwenden Sie die DAvg-Funktion in einem berechneten Steuerelement, wenn Sie Kriterien zum Einschränken des Bereichs der Daten festlegen möchten, für die die DAvg-Funktion durchgeführt wird. Legen Sie z. B. zum Anzeigen der durchschnittlichen Frachtkosten für Lieferungen nach Kalifornien für die ControlSource-Eigenschaft eines Textfelds den folgenden Ausdruck fest:

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

Wenn Sie einfach den Mittelwert aller Datensätze in "Domäne" erhalten möchten, verwenden Sie die Mittelwert-Funktion.

Verwenden Sie die DomMittelwert-Funktion in einem Modul oder Makro oder in einem berechneten Steuerelement in einem Formular, wenn sich ein Feld, das Sie anzeigen müssen, nicht in der Datensatzquelle befindet, auf der das Formular basiert. Angenommen, Sie verfügen über ein Formular, das auf der Tabelle "Bestellungen" basiert, und Sie möchten das Feld "Menge " aus der Tabelle "Bestelldetails" einbeziehen, um die durchschnittliche Anzahl der von einem bestimmten Kunden bestellten Artikel anzuzeigen. Verwenden Sie die DomMittelwert-Funktion , um diese Berechnung durchzuführen und die Daten auf dem Formular anzuzeigen.

Tipp

  • Wenn Sie die DAvg-Funktion in einem berechneten Steuerelement verwenden, können Sie das Steuerelement im Formularkopf oder -fuß ablegen, damit der Wert für dieses Steuerelement nicht bei jedem Wechsel zu einem neuen Datensatz neu berechnet wird.
  • Wenn der Datentyp des Felds, von dem Ausdr abgeleitet wird, eine Zahl ist, gibt die DomMittelwert-Funktion den Datentyp "Double" zurück. Wenn Sie die DAvg-Funktion in einem berechneten Steuerelement verwenden, fügen Sie eine Datentyp-Konvertierungsfunktion in den Ausdruck ein, um das Leistungsverhalten zu verbessern.
  • Zwar können Sie mit DAvg den Mittelwert aus Werten in einem Feld in einer Fremdtabelle berechnen, aber es kann effizienter sein, eine Abfrage zu erstellen, die die benötigten Felder aus beiden Tabellen enthält, und dem Formular oder Bericht dann diese Abfrage zugrunde zu legen.

Beispiel

Die folgende Funktion gibt die durchschnittlichen Frachtkosten für Bestellungen zurück, die an oder nach einem bestimmten Datum versandt wurden. The domain is an Orders table. Das Argument Kriterien schränkt den resultierenden Satz von Datensätzen basierend auf dem angegebenen Land und dem Lieferdatum ein. Beachten Sie, dass das Schlüsselwort (Keyword) in der Zeichenfolge enthalten ist, um die mehreren Felder im Argument Kriterien zu trennen. Alle Datensätze, die in die Berechnung der DAvg-Funktion einbezogen werden, weisen diese beiden Kriterien auf.

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

In den folgenden Beispielen wird gezeigt, wie verschiedene Kriterientypen mit der DomMittelwert-Funktion verwendet werden.

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

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

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

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

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

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

    ' ***************************
    ' Combinations
    ' Multiple types of criteria
    variable = DAvg("[FieldName]", "TableName", "[Criteria1] = " & Forms![FormName]![Control1] _
             & " AND [Criteria2] = '" & Forms![FormName]![Control2] & "'" _
            & " AND [Criteria3] =#" & Forms![FormName]![Control3] & "#")
    
    ' Use two fields from a single record.
    variable = DAvg("[LastName] & ', ' & [FirstName]", "tblPeople", "[PrimaryKey] = 7")
            
    ' Expressions
    variable = DAvg("[Field1] + [Field2]", "tableName", "[PrimaryKey] = 7")
    
    ' Control Structures
    variable = DAvg("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.