Przejdź do głównej zawartości
Pomoc techniczna
Zaloguj się przy użyciu konta Microsoft
Zaloguj się lub utwórz konto.
Witaj,
Wybierz inne konto.
Masz wiele kont
Wybierz konto, za pomocą którego chcesz się zalogować.

Za pomocą funkcji DAvg można obliczyć średnią zbioru wartości w określonym zestawie rekordów ( domena ). Funkcji DAvg należy używać w module Visual Basic for Applications (VBA), w makro, w wyrażeniu zapytania lub w kontrolka obliczeniowa.

Można na przykład użyć funkcji DAvg w wierszu kryteriów zapytania wybierającego dla kosztów frachtu, aby ograniczyć wyniki do tych rekordów, w których koszt frachtu przekracza średnią. Możesz też użyć wyrażenia zawierającego funkcję DAvg w kontrolce obliczeniowej i wyświetlić średnią wartość poprzednich zamówień obok wartości nowej kolejności.

Składnia

DAvg ( wyr ., domena [, kryteria] )

W składni funkcji DAvg występują następujące argumenty:

Argument

Opis

wyrażenie

Argument wymagany. Wyrażenie identyfikujące pole zawierające dane liczbowe, które mają zostać uśrednione. Może to być wyrażenie tekstowe identyfikujące konkretne pole w tabeli lub zapytaniu albo wyrażenie wykonujące obliczenia na danych w tym polu. W programie expr można dołączyć nazwę pola w tabeli, kontrolkę w formularzu, 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 D Avg. 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, funkcja DAvgoceni wyrażenie względem całej domeny. Każde pole zawarte w criteria musi być również polem w domenie; W przeciwnym razie funkcja DAvg zwraca wartość Null.


Spostrzeżenia

Rekordy zawierające wartości Null nie są uwzględniane w obliczeniach średniej.

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

Za pomocą funkcji DAvg można określić kryteria w wierszu Kryteria zapytania. Załóżmy na przykład, że chcesz wyświetlić listę wszystkich produktów zamówionych w ilości powyżej średniej liczby zamówień. Możesz utworzyć zapytanie w tabelach Zamówienia, Szczegóły zamówień i Produkty oraz dołączyć pole Nazwa produktu i pole Ilość, a w wierszu Kryteria poniżej pola Ilość w wierszu Kryteria wpisz następujące wyrażenie:

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

Funkcji DAvg można także użyć w wyrażeniu pola obliczeniowego w zapytaniu lub w wierszu Aktualizacja do zapytanie aktualizujące.

Uwaga: Funkcji DAvg lub Avg można użyć w wyrażeniu pola obliczeniowego w zapytanie podsumowujące. Jeśli używasz funkcji DAvg , wartości są uśredniane przed zgrupowaniem danych. Jeśli używasz funkcji Avg , dane są grupowane przed wartościami w wyrażeniu pola są uśredniane.

Funkcji DAvg należy używać w kontrolce obliczeniowej, gdy trzeba określić kryteria ograniczające zakres danych, dla którego wykonywana jest funkcja DAvg . Aby na przykład wyświetlić średni koszt frachtu dla przesyłek wysłanych do Kalifornii, ustaw właściwość ŹródłoKontrolki pola tekstowego na następujące wyrażenie:

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

Jeśli chcesz po prostu obliczyć średnią wszystkich rekordów w domenie, użyj funkcji Avg .

Funkcji DAvg można używać w module lub makrze albo w kontrolce obliczeniowej w formularzu, jeśli pole, które ma zostać wyświetlone, nie znajduje się w źródle rekordów, na którym jest oparty formularz. Załóżmy na przykład, że masz formularz oparty na tabeli Zamówienia i chcesz dołączyć pole Ilość z tabeli Szczegóły zamówień, aby wyświetlić średnią liczbę elementów zamówionych przez określonego klienta. Za pomocą funkcji DAvg można wykonać to obliczenie i wyświetlić dane w formularzu.

Porady

  • Jeśli używasz funkcji DAvg w kontrolce obliczeniowej, warto umieścić kontrolkę w nagłówku lub stopce formularza, aby wartość tej kontrolki nie była ponownie obliczana po każdym przejściu do nowego rekordu.

  • Jeśli typ danych pola, z którego pochodzi wyrażenie, jest liczbą, funkcja DAvg zwraca typ danych Double. Jeśli używasz funkcji DAvg w kontrolce obliczeniowej, uwzględnij w wyrażeniu funkcję konwersji typu danych, aby zwiększyć wydajność.

  • Chociaż za pomocą funkcji DAvg można określić średnią wartości w polu w tabela obca, bardziej efektywne może być utworzenie zapytania zawierającego wszystkie potrzebne pola, a następnie oparcie formularza lub raportu na tym zapytaniu.

Uwaga: Niezapisane zmiany rekordów w domenie nie są uwzględniane podczas korzystania z tej funkcji. Jeśli chcesz, aby funkcja DAvg 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ład

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.

Poniższa funkcja zwraca średni koszt frachtu dla zamówień wysłanych w określonym dniu lub później. Domena to tabela Zamówienia. Argument kryteria ogranicza wynikowy zestaw rekordów na podstawie danego kraju/regionu i daty wysyłki. Należy pamiętać, że słowo kluczowe ORAZ jest zawarte w ciągu oddzielania wielu pól w argumacie kryteria . Wszystkie rekordy uwzględnione w obliczeniach funkcji DAvg będą miały oba te kryteria.

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

Aby wywołać funkcję, w oknie bezpośrednim użyj następującego wiersza kodu:

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

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ą.

Czy te informacje były pomocne?

Jaka jest jakość języka?
Co wpłynęło na Twoje wrażenia?
Jeśli naciśniesz pozycję „Wyślij”, Twoja opinia zostanie użyta do ulepszania produktów i usług firmy Microsoft. Twój administrator IT będzie mógł gromadzić te dane. Oświadczenie o ochronie prywatności.

Dziękujemy za opinię!

×