Applies ToAccess dla Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

Za pomocą funkcji DStDev i DStDevP można oszacować odchylenie standardowe dla zestawu wartości w określonym zestawie rekordów ( domena ). Funkcje DStDev i DStDevP można używać w module języka Visual Basic for Applications (VBA), makro, wyrażeniu zapytania lub kontrolka obliczeniowa w formularzu lub raporcie.

Użyj funkcji DStDevP do oceny populacji i funkcji DStDev w celu oceny próbki populacji.

Można na przykład użyć funkcji DStDev w module, aby obliczyć odchylenie standardowe dla zestawu wyników testów uczniów.

Składnia

DStDev ( wyr ., domena [, kryteria] )

DStDevP ( wyr ., domena [, kryteria] )

Funkcje DStDev i DStDevP mają następujące argumenty:

Argument

Opis

wyrażenie

Argument wymagany. Wyrażenie identyfikujące pole liczbowe, dla którego ma zostać odszukane odchylenie standardowe. Może to być wyrażenie tekstowe identyfikujący pole z tabeli lub zapytania albo wyrażenie wykonujące obliczenia na danych w tym polu. Wyrażenie może zawierać nazwę pola w tabeli, kontrolkę formularza, stałą lub funkcję. Jeśli wyrażenie zawiera funkcję, może to być funkcja wbudowana lub zdefiniowana przez użytkownika, ale z wyłączeniem funkcji agregującej domeny i funkcji agregującej języka SQL.

domena

Argument wymagany. Wyrażenie tekstowe identyfikujące zestaw rekordów stanowiący domenę. Może to być nazwa tabeli lub nazwa zapytania, o ile to zapytanie nie wymaga parametru.

kryteria

Argument opcjonalny. Wyrażenie ciągu służące do ograniczania zakresu danych, dla którego wykonywana jest funkcja DStDev lub DStDevP . Na przykład kryteria są często równoważne klauzuli WHERE w wyrażeniu SQL bez wyrazu WHERE. Jeśli argument kryteria zostanie pominięty, funkcje DStDev i DStDevP będą oceniać wyrażenie względem całej domeny. Każde pole zawarte w kryteriach musi być również polem w domenie. W przeciwnym razie funkcje DStDev i DStDevP zwrócą wartość Null.

Uwagi

Jeśli domena odwołuje się do mniej niż dwóch rekordów lub jeśli mniej niż dwa rekordy spełniają kryteria, funkcje DStDev i DStDevP zwracają wartość Null, co oznacza, że nie można obliczyć odchylenia standardowego.

Niezależnie od tego, czy używasz funkcji DStDev , czy DStDevP w makkrach, module, wyrażeniu zapytania lub kontrolce obliczeniowej, musisz starannie skonstruować argument kryteria , aby upewnić się, że zostanie on poprawnie oceniony.

Za pomocą funkcji DStDev i DStDevP można określić kryteria w wierszu Kryteria zapytania wybierającego. Można na przykład utworzyć zapytanie w tabeli Zamówienia i w tabeli Produkty, aby wyświetlić wszystkie produkty, dla których koszt frachtu spadł powyżej średniej oraz odchylenie standardowe kosztu frachtu. Wiersz Kryteria poniżej pola Fracht będzie zawierał następujące wyrażenie:

>(DStDev("[Freight]", "Orders") + DAvg("[Freight]", "Orders"))

Funkcji DStDev i DStDevP można używać w wyrażeniu zapytania w polu obliczeniowym lub w wierszu Aktualizacja do zapytanie aktualizujące.

Uwaga: Funkcji DStDev i DStDevP lub funkcji StDev i StDevP można użyć w wyrażeniu pola obliczeniowego zapytanie podsumowujące. Jeśli używasz funkcji DStDev lub DStDevP , wartości są obliczane przed zgrupowanymi danymi. Jeśli używasz funkcji StDev lub StDevP , dane są grupowane przed obliczeniem wartości w wyrażeniu pola.

Funkcji DStDev i DStDevP należy używać w kontrolce obliczeniowej, gdy trzeba określić kryteria ograniczające zakres danych, dla którego ta funkcja jest wykonywana. Aby na przykład wyświetlić odchylenie standardowe zamówień wysłanych do Kalifornii, ustaw właściwość ŹródłoKontrolki pola tekstowego na następujące wyrażenie:

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

Jeśli chcesz po prostu znaleźć odchylenie standardowe dla wszystkich rekordów w domenie, użyj funkcji StDev lubStDevP .

Porada    Jeśli typ danych pola, z którego pochodzi wyrażenie, jest liczbą, funkcje DStDev i DStDevP zwracają podwójny typ danych. Jeśli używasz funkcji DStDev lub DStDevP w kontrolce obliczeniowej, uwzględnij funkcję konwersji typu danych w wyrażeniu, aby zwiększyć wydajność.

Uwaga: Niezapisane zmiany rekordów w domenie nie są uwzględniane podczas korzystania z tych funkcji. Jeśli chcesz, aby funkcja DStDev lub DStDevP była oparta na zmienionych wartościach, należy najpierw zapisać zmiany, klikając pozycję Zapisz rekord w obszarze Rekordy na karcie Dane , przenosząc fokus do innego rekordu lub używając metody aktualizacji .

Przykłady zapytań

Expression

Wyniki

SELECT DStDev("unitprice","productSales","unitprice>140") AS Wyr1, DStDevP("unitprice","productSales","unitprice<140") AS Wyr2 FROM productSales GROUP BY DStDev("unitprice","productSales","unitprice>140"), DStDevP("unitprice","productSales","unitprice<140");

Oblicza odchylenie standardowe wartości "CenaJednostkowa" (biorąc pod uwagę dane te jako próbkę) z tabeli "ProductSales", gdzie "cenajednostkowa" jest większa niż 140 i wyświetla wynik w polu Wyr1. Oblicza również odchylenie standardowe wartości "CenaJednostkowa" (biorąc pod uwagę dane jako całą populację), gdzie "cena jednostkowa" jest mniejsza niż 140 i wyświetla wyniki w polu Wyr2.

SELECT DStDev("unitprice","productSales","unitprice>140") AS DstDev, DStDevP("unitprice","productSales","unitprice<140") AS DstDevP FROM productSales GROUP BY DStDev("unitprice ","productSales","unitprice>140"), DStDevP("unitprice","productSales","unitprice<140");

Oblicza odchylenie standardowe wartości "CenaJednostkowa" (biorąc pod uwagę dane te jako próbkę) z tabeli "ProductSales", gdzie "cenajednostkowa" jest większa niż 140 i wyświetla wynik w tabeli DstDev. Oblicza również odchylenie standardowe wartości "CenaJednostkowa" (biorąc pod uwagę dane jako całą populację), gdzie "cenajednostkowa" jest mniejsza niż 140 i wyświetla wyniki w funkcji DstDevP.

Przykład języka VBA

Uwaga: Poniższe przykłady przedstawiają sposób użycia tej funkcji w module języka Visual Basic for Applications (VBA). Aby uzyskać dodatkowe informacje na temat pracy w języku VBA, wybierz pozycję Dokumentacja dewelopera z listy rozwijanej obok przycisku Wyszukaj i wprowadź odpowiednie terminy w polu wyszukiwania.

W poniższym przykładzie zwrócono szacunkowe odchylenie standardowe dla populacji i próbkę populacji dla zamówień wysłanych do Wielkiej Brytanii. Domena to tabela Zamówienia. Argument kryteria ogranicza wynikowy zestaw rekordów do tych, dla których wartość ShipCountryRegion to Uk.

Dim dblX As DoubleDim dblY As Double' Sample estimate.dblX = DStDev("[Freight]", "Orders", _    "[ShipCountryRegion] = 'UK'")' Population estimate.dblY = DStDevP("[Freight]", "Orders", _    "[ShipCountryRegion] = 'UK'")

W następnym przykładzie te same oszacowania są obliczane przy użyciu zmiennej strCountryRegionw argumacie kryteria . Zwróć uwagę, że w wyrażeniu ciągu są zawarte pojedyncze cudzysłowy ('), dzięki czemu po połączeniu ciągów literał ciągu UK zostanie ujęty w pojedynczy cudzysłów.

Dim strCountryRegion As StringDim dblX As DoubleDim dblY As DoublestrCountryRegion = "UK"dblX = DStDev("[Freight]", "Orders", _    "[ShipCountryRegion] = '" & strCountryRegion & "'")dblY = DStDevP("[Freight]", "Orders", _    "[ShipCountryRegion] = '" & strCountryRegion & "'")

Potrzebujesz dalszej pomocy?

Chcesz uzyskać więcej opcji?

Poznaj korzyści z subskrypcji, przeglądaj kursy szkoleniowe, dowiedz się, jak zabezpieczyć urządzenie i nie tylko.

Społeczności pomagają zadawać i odpowiadać na pytania, przekazywać opinie i słuchać ekspertów z bogatą wiedzą.