Sie können die Funktionen DVar und DVarP verwenden, um die Varianz zwischen einer Gruppe von Werten in einer bestimmten Gruppe von Datensätzen (einer Domäne) zu schätzen. Verwenden Sie die Funktionen DVar und DVarP in einem Visual Basic for Applications (VBA)-Modul, einem Makro, einem Abfrageausdruck oder einem berechneten Steuerelement in einem Formular oder Bericht.
Verwenden Sie die Funktion DBVARIANZEN, um die Varianz für eine Grundgesamtheit auszuwerten, und die Funktion DBVARIANZ, um die Varianz für eine Stichprobe auszuwerten.
Sie können die Funktion DBVARIANZ beispielsweise verwenden, um die Varianz für eine Reihe von Prüfungsergebnissen von Studenten zu berechnen.
Syntax
DVar(expr, domain [, criteria] )
DVarP(expr, domain [, criteria] )
Die Funktionen DBVARIANZ und DBVARIANZEN weisen die folgenden Argumente auf:
| Argument | Beschreibung |
|---|---|
| Ausdruck | Erforderlich. Ein Ausdruck, der das numerische Feld angibt, dessen Werte die Varianz angeben. Hierbei kann es sich um einen Zeichenfolgenausdruck handeln, der ein Feld aus einer Tabelle oder Abfrage identifiziert, oder um einen Ausdruck, der eine Berechnung der Daten in diesem Feld durchführt. In Ausdruck können Sie das Feld Name in eine Tabelle, ein Steuerelement in einem Formular, eine Konstante oder eine Funktion einfügen. Wenn Ausdr eine Funktion enthält, kann sie entweder integriert oder benutzerdefiniert sein, aber keine andere Domänenaggregat- oder SQL-Aggregatfunktion. Jedes Feld, das in der Ausdr enthalten ist, muss ein numerisches Feld sein. |
| 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 DVar - oder DVarP-Funktion ausgeführt wird. Kriterien entsprechen z. B. häufig der WHERE-Klausel in einem SQL-Ausdruck ohne das Wort WHERE. Wenn Kriterien weggelassen werden, werten die Funktionen DVar und DVarPexpr für die gesamte Domäne aus. Jedes Feld, das in den Kriterien enthalten ist, muss auch ein Feld in der Domäne sein. Andernfalls geben die Funktionen DVar und DVarP einen Nullwert zurück. |
Hinweise
Wenn die Domäne auf weniger als zwei Datensätze verweist oder wenn weniger als zwei Datensätze Kriterien erfüllen, geben die Funktionen DVar und DVarPeinen Nullwert zurück, was angibt, dass eine Varianz nicht berechnet werden kann.
Unabhängig davon, ob Sie die DVar - oder DVarP-Funktion in einem Makro, Modul, Abfrageausdruck oder berechneten Steuerelement verwenden, müssen Sie das Argument Kriterien sorgfältig erstellen, um sicherzustellen, dass es richtig ausgewertet wird.
Sie können die Funktionen DBVARIANZ und DBVARIANZEN verwenden, um Kriterien in der Zeile Kriterien einer Auswahlabfrage, in einem berechneten Feldausdruck einer Abfrage oder in der Zeile Aktualisieren einer Aktualisierungsabfrage anzugeben.
Hinweis
Sie können die Funktionen DVar und DVarP oder die Funktionen Var und VarP in einem berechneten Feldausdruck in einer Gesamtsummenabfrage verwenden. Wenn Sie die Funktion DBVARIANZ oder DBVARIANZEN verwenden, werden die Werte berechnet, bevor die Daten gruppiert werden. Wenn Sie die Funktion VARIANZ oder VARIANZEN verwenden, werden die Daten gruppiert, bevor Werte im Feldausdruck ausgewertet werden.
Verwenden Sie die Funktionen DVar und DVarP in einem berechneten Steuerelement, wenn Sie Kriterien angeben müssen, um den Datenbereich einzuschränken, für den die Funktion ausgeführt wird. Zum Anzeigen einer Varianz für nach Kalifornien gelieferte Bestellungen, legen Sie z. B. die Eigenschaft ControlSourceEigenschaft eines Textfelds auf den folgenden Ausdruck fest:
=DVar("[Freight]", "Orders", "[ShipRegion] = 'CA'")
Wenn Sie einfach die Standardabweichung aller Datensätze in der Domäne ermitteln möchten, verwenden Sie die Var - oder VarP-Funktion .
Hinweis
Nicht gespeicherte Änderungen an Datensätzen in der Domäne werden bei Verwendung dieser Funktionen nicht eingeschlossen. Wenn die Funktion DBVARIANZ oder DBVARIANZEN 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.
Abfragebeispiel
| Ausdruck | Ergebnisse |
|---|---|
| SELECT DVar("unitprice","productSales","unitprice>140") AS DVar_Value, DVarP("unitprice","productSales","unitprice<140") AS DVarP_Value FROM productSales GROUP BY DVar("unitprice","productSales","unitprice>140"), DVarP("unitprice","productSales","unitprice<140"); | Berechnet die Abweichung von "Einzelpreis" aus der Tabelle "ProduktUmsatz", in der "Einzelpreis" größer als 140 ist, und zeigt das Ergebnis in DVar_Value an. Berechnet auch die Varianz von "Einzelpreis" (wobei die angegebenen Daten als Grundgesamtheit betrachtet werden), wobei "Einzelpreis" kleiner als 140 ist, und zeigt die Ergebnisse in DVarP_Value an. |
VBA-Beispiele
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.
Im folgenden Beispiel werden Schätzungen der Varianz für eine Grundgesamtheit und ein Beispiel der Grundgesamtheit für Bestellungen zurückgegeben, die nach Großbritannien (United Kingdom, UK) versendet werden. Als Domäne wird die Tabelle "Orders" verwendet. Das Argument Kriterien schränkt die resultierende Gruppe von Datensätzen auf diejenigen ein, für die "ShipCountryRegion" gleich "UK" ist.
Dim dblX As Double
Dim dblY As Double
' Sample estimate.
dblX = DVar("[Freight]", "Orders", _
"[ShipCountryRegion] = 'UK'")
' Population estimate.
dblY = DVarP("[Freight]", "Orders", _
"[ShipCountryRegion] = 'UK'")
Das nächste Beispiel gibt Schätzungen mithilfe einer Variablen namens "Kriterien" zurück. strCountryRegion Beachten Sie, dass einfache Anführungszeichen (') in den Zeichenfolgenausdruck eingeschlossen sind, sodass beim Verketten der Zeichenfolgen das Zeichenfolgenliteral UK in einfache Anführungszeichen eingeschlossen wird.
Dim strCountryRegion As String
Dim dblX As Double
strCountryRegion = "UK"
dblX = DVar("[Freight]", "Orders", _
"[ShipCountryRegion] = '" & strCountryRegion & "'")