Lekcja tworzenia wyrażeń

Dotyczy
Access dla Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

Przy użyciu wyrażeń można wykonywać różnorodne operacje na danych. Można na przykład określić liczbę dni, które upłynęły od wysyłki zamówienia lub połączyć pola FirstName (Imię) i LastName (Nazwisko) w jedno pole FullName (Imię i nazwisko). W poniższych sekcjach pokazano, jak utworzyć wyrażenie krok po kroku.

W tym artykule

Obliczanie wartości dla kontrolek w formularzach i raportach
Tworzenie pola obliczeniowego w zapytaniu
Ustawianie wartości domyślnych dla pola tabeli
Dodawanie reguły poprawności do pola lub rekordu w tabeli
Grupowanie i sortowanie danych w raportach
Używanie wyrażeń jako kryteriów zapytania
Tworzenie pola obliczeniowego w tabeli
Ustawianie wartości domyślnych dla kontrolek
Dodawanie reguły poprawności dla kontrolki
Decydowanie, które akcje makra są uruchamiane

Obliczanie wartości dla kontrolek w formularzach i raportach

W przypadku używania wyrażenia jako źródła danych dla kontrolki jest tworzona kontrolka obliczeniowa. Załóżmy na przykład, że w raporcie jest wyświetlanych wiele rekordów zapasów i chcesz w stopce raportu utworzyć sumę obejmującą wszystkie pozycje raportu.

Suma w raporcie

Aby obliczyć sumę, umieść w stopce raportu kontrolkę pola tekstowego, a następnie jako właściwość Źródło kontrolki pola tekstowego ustaw następujące wyrażenie:


   =Sum([table_field])

W tym przypadku table_field jest nazwą pola zawierającego wartości sum częściowych. Pole to może pochodzić z tabeli lub zapytania. Funkcja Sum oblicza sumę wszystkich wartości table_field.

PROCEDURA

  1. W okienku nawigacji kliknij prawym przyciskiem myszy formularz, który chcesz zmienić, a następnie w menu skrótów kliknij polecenie Widok układu lub Widok projektu.
  2. Wybierz kontrolkę, w której chcesz wprowadzić wyrażenie.
  3. Jeśli arkusz właściwości nie jest jeszcze wyświetlony, naciśnij klawisz F4, aby go wyświetlić.
  4. Aby ręcznie utworzyć wyrażenie, na karcie Dane arkusza właściwości kliknij właściwość ŹródłoKontrolki pola tekstowego, a następnie wpisz = pozostałą część wyrażenia. Na przykład, aby obliczyć sumę częściową przedstawioną powyżej, wpisz =Sum([table_field]), pamiętając o table_fieldzastąpieniu pola nazwą .
  5. Aby utworzyć wyrażenie za pomocą Konstruktora wyrażeń, kliknij przycisk KonstruujObraz przycisku w polu właściwości.
    Po zakończeniu wpisywania wyrażenia arkusz właściwości będzie wyglądać następująco:
    Wyrażenie we właściwości Źródło kontrolki pola tekstowego.

Początek strony

Używanie wyrażeń jako kryteriów zapytania

Kryteriów zapytania można używać do zawężania wyników zapytania. Kryteria wprowadza się w formie wyrażenia, a program Access zwraca tylko wiersze pasujące do tego wyrażenia.

Załóżmy na przykład, że chcesz wyświetlić wszystkie zamówienia z datą wysyłki przypadającą w pierwszych trzech miesiącach 2017 roku. W celu wprowadzenia odpowiedniego kryterium wpisujesz poniższe wyrażenie w komórce Kryteria kolumny Data/Godzina zapytania. W tym przykładzie użyto kolumny typu Data/Godzina o nazwie DataWysyłki. Aby zdefiniować zakres dat, wprowadź kryteria w następujący sposób:


Between #1/1/2017# And #3/31/2017#

Kolumna DataWysyłki będzie wyglądać podobnie do pokazanej poniżej.

Wyrażenie w wierszu Kryteria siatki kwerendy.

Jeśli wartość kolumny DataWysyłki znajdzie się w określonym zakresie dat, każdy rekord w tabeli Zamówienia zostanie uwzględniony w wyniku zapytania. Zwróć uwagę, że daty w wyrażeniu są ujęte w znaki numeru (#). Program Access traktuje wartości otoczone znakami numeru jako wartości o typie danych Data/Godzina. Potraktowanie tych wartości jako dane typu Data/Godzina umożliwia wykonanie obliczeń na tych wartościach, takich jak odejmowanie jednej daty od drugiej.

PROCEDURA

  1. W okienku nawigacji kliknij prawym przyciskiem myszy zapytanie, które chcesz zmienić, a następnie w menu skrótów kliknij polecenie Widok projektu.
  2. Kliknij komórkę Kryteria w kolumnie, której mają dotyczyć wprowadzone kryteria.
  3. Aby ręcznie utworzyć wyrażenie, wpisz wyrażenie kryterium. Nie poprzedzaj wyrażenia kryterium operatorem = .
  4. Aby utworzyć wyrażenie za pomocą Konstruktora wyrażeń, na wstążce kliknij kartę Projektowanie, a następnie w grupie Konfiguracja kwerendy kliknij przycisk Konstruktor.
    Jeśli potrzebujesz większego obszaru do edytowania wyrażenia, umieść kursor w komórce Kryteria i naciśnij klawisze SHIFT+F2, aby wyświetlić okno Powiększenie:
    Wyrażenie w oknie dialogowym Powiększenie.
    Porada Aby tekst był bardziej czytelny, wybierz czcionkę.

Początek strony

Tworzenie pola obliczeniowego w kwerendzie

Załóżmy, że projektujesz zapytanie i chcesz wyświetlić wyniki obliczenia, używając innych pól kwerendy. Aby utworzyć pole obliczeniowe, wprowadź wyrażenie w pustej komórce w wierszu Pole kwerendy. Jeśli na przykład kwerenda zawiera pole Ilość i pole Cena jednostkowa, możesz pomnożyć te pola w celu utworzenia pola obliczeniowego Cena rozszerzona, wprowadzając następujące wyrażenie w wierszu Pole kwerendy:


Extended Price: [Quantity] * [Unit Price]

Wpisanie przed wyrażeniem tej Extended Price: nazwy powoduje nadanie nowej kolumnie nazwy Cena rozszerzona. Ta nazwa jest często nazywana aliasem. Jeśli alias nie zostanie wprowadzony, program Access utworzy alias utworzony automatycznie, na przykład Expr1.

Tworzenie pola obliczeniowego w kwerendzie za pomocą wyrażenia

Gdy zostanie uruchomione zapytanie, program Access wykonuje obliczenia w każdym wierszu, jak pokazano na poniższej ilustracji:

Pole obliczeniowe w widoku arkusza danych

PROCEDURA

  1. W okienku nawigacji kliknij prawym przyciskiem myszy zapytanie, które chcesz zmienić, a następnie w menu skrótów kliknij polecenie Widok projektu.
  2. Kliknij komórkę Pole w kolumnie, w której chcesz utworzyć pole obliczeniowe.
  3. Aby ręcznie utworzyć wyrażenie, wpisz je.
    Nie poprzedzaj wyrażenia kryterium operatorem=. Zamiast tego rozpocznij wyrażenie etykietą opisową i następującym po niej dwukropkiem. Wpisz Extended Price: na przykład etykietę wyrażenia tworzącego pole obliczeniowe o nazwie Cena rozszerzona. Następnie wprowadź kryteria wyrażenia po dwukropku.
  4. Aby utworzyć wyrażenie za pomocą Konstruktora wyrażeń, na wstążce kliknij kartę Projektowanie, a następnie w grupie Konfiguracja kwerendy kliknij przycisk Konstruktor.

Początek strony

Tworzenie pola obliczeniowego w tabeli

W programie Access można utworzyć pole obliczeniowe w tabeli. Eliminuje to konieczność tworzenia oddzielnej kwerendy wykonującej obliczenia. Przykładowo jeśli masz tabelę z liczbą sztuk, ceną i stawką podatku każdej pozycji w zamówieniu, możesz dodać pole obliczeniowe pokazujące cenę całkowitą:


[Quantity]*([UnitPrice]+([UnitPrice]*[TaxRate]))

Obliczenie nie może obejmować pól z innych tabel ani zapytań, a wyniki obliczeń są tylko do odczytu.

PROCEDURA

  1. Otwórz tabelę, klikając ją dwukrotnie w okienku nawigacji.

  2. Przewiń tabelę w poziomie do pierwszej kolumny z prawej strony i kliknij nagłówek kolumny Kliknij, aby dodać.

  3. Na wyświetlonej liście kliknij pozycję Pole obliczeniowe, a następnie kliknij żądany typ danych wyniku. W programie Accesszostanie wyświetlony Konstruktor wyrażeń.

  4. Wpisz obliczenia dla tego pola, na przykład:

    [Quantity] * [Unit Price]
    

    W przypadku pola obliczeniowego wyrażenia nie rozpoczyna się od znaku równości (=).

  5. Kliknij przycisk OK.
    Program Access doda pole obliczeniowe, a następnie wyróżni nagłówek pola, umożliwiając wpisanie jego nazwy.

  6. Wpisz nazwę pola obliczeniowego i naciśnij klawisz ENTER.

Początek strony

Ustawianie wartości domyślnych dla pola tabeli

Za pomocą wyrażenia można określić wartość domyślną pola w tabeli — wartość, której program Access używa dla nowych rekordów, gdy nie jest podana inna wartość. Załóżmy przykładowo że chcesz, aby podczas dodawania nowego rekordu w polu DataZamówienia była automatycznie wstawiana data i godzina. W tym celu możesz wprowadzić następujące wyrażenie:


Now()

PROCEDURA

  1. W okienku nawigacji kliknij dwukrotnie tabelę, którą chcesz zmienić.
    W programie Access zostanie otwarta tabela w widoku arkusza danych.
  2. Wybierz pole, które chcesz zmienić.
  3. Na wstążce kliknij pozycję Pola tabeli, a następnie w grupie Właściwości kliknij pozycję Wartość domyślna. W programie Accesszostanie wyświetlony Konstruktor wyrażeń.
  4. Wpisz wyrażenie w polu, pamiętając, aby rozpocząć je znakiem równości (=).

Uwaga Jeżeli powiążesz kontrolkę z polem tabeli i zarówno kontrolka, jak i pole, będą miały wartość domyślną, wartość domyślna kontrolki będzie miała pierwszeństwo przed polem tabeli.

Początek strony

Ustawianie wartości domyślnych dla kontrolek

Innym typowym miejscem stosowania wyrażeń jest właściwość Wartość domyślna kontrolki. Właściwość Wartość domyślna kontrolki działa podobnie do właściwości Wartość domyślna pola w tabeli. Aby na przykład wprowadzić bieżącą datę jako wartość domyślną pola tekstowego, można użyć następującego wyrażenia:


Date()

Za pomocą funkcji Date wyrażenie zwraca bieżącą datę, ale nie godzinę. Jeżeli powiążesz pole tekstowe z polem tabeli, które ma wartość domyślną, wartość domyślna kontrolki będzie miała pierwszeństwo przed polem tabeli. Często bardziej sensowne jest ustawienie właściwości Wartość domyślna pola tabeli. Dzięki temu jeśli kilka kontrolek w różnych formularzach będzie się opierać na tym samym polu tabeli, w przypadku każdej kontrolki zostanie zastosowana ta sama wartość domyślna. Pomaga to zachować spójność wprowadzanych danych we wszystkich formularzach.

PROCEDURA

  1. W okienku nawigacji kliknij prawym przyciskiem myszy formularz lub raport, który chcesz zmienić, a następnie w menu skrótów kliknij polecenie Widok układu lub Widok projektu.
  2. Zaznacz kontrolkę, którą chcesz zmienić.
  3. Jeśli arkusz właściwości nie jest jeszcze wyświetlony, naciśnij klawisz F4, aby go wyświetlić.
  4. Kliknij kartę Wszystkie w arkuszu właściwości, a następnie kliknij pole właściwości Wartość domyślna.
  5. Wpisz wyrażenie lub kliknij przycisk KonstruujObraz przycisku w polu właściwości, aby utworzyć wyrażenie za pomocą Konstruktora wyrażeń.

Początek strony

Dodawanie reguły poprawności do pola lub rekordu w tabeli

Wyrażenia są również pomocne przy sprawdzaniu poprawności danych wprowadzanych do bazy danych, nie zezwalając na wprowadzanie nieprawidłowych danych. W przypadku tabel dostępne są dwa rodzaje reguł poprawności: reguły poprawności pola (uniemożliwiające użytkownikom wprowadzanie nieprawidłowych danych w jednym polu) oraz reguły poprawności rekordu (uniemożliwiające użytkownikom tworzenie rekordów niespełniających reguły poprawności). W obu rodzajach reguł poprawności używane są wyrażenia.

Załóżmy na przykład, że w tabeli Zapasy z polem W magazynie chcemy ustawić regułę wymuszającą na użytkownikach wprowadzanie wartości większej niż lub równej zero. Innymi słowy, stan zapasów nie może być liczbą ujemną. W tym celu jako regułę poprawności pola W magazynie można zastosować następujące wyrażenie:


 >=0

PROCEDURA: wprowadzanie reguły poprawności pola lub rekordu

  1. W okienku nawigacji kliknij dwukrotnie tabelę, którą chcesz zmienić. W programie Access zostanie otwarta tabela w widoku arkusza danych.

  2. W przypadku reguły poprawności pola kliknij pole, które chcesz zmienić.

  3. Na wstążce kliknij pozycję Pola tabeli, następnie w grupie Sprawdzanie poprawności pola kliknij pozycję Sprawdzanie poprawności, a następnie kliknij pozycję Reguła poprawności pola lub Reguła poprawności. W programie Accesszostanie wyświetlony Konstruktor wyrażeń.

  4. Rozpocznij wpisywanie wymaganych kryteriów. Na przykład w przypadku reguły poprawności pola wymagającej, aby wszystkie wartości były większe niż lub równe zero, wpisz następujące wyrażenie:

     >=0
    

    Wyrażenia nie poprzedzaj znakiem równości (=).

Wyrażenia reguł poprawności są wyrażeniami logicznymi, co oznacza, że są albo TrueFalse dla dowolnej wartości wejściowej. Reguła poprawności musi dotyczyć True wartości lub program Access nie zapisze danych wejściowych i wyświetli komunikat sprawdzania poprawności z informacją o błędzie. W tym przykładzie jeśli w polu W magazynie zostanie wprowadzona wartość mniejsza niż zero, regułą poprawności będzie False, a program Access nie zaakceptuje wartości. Jeśli nie zostanie wprowadzony komunikat dotyczący sprawdzania poprawności zgodnie z opisem w następnej sekcji, program Access wyświetli własny komunikat z informacją, że wprowadzona wartość jest zabroniona przez regułę poprawności pola.

PROCEDURA: wprowadzanie komunikatu sprawdzania poprawności

Aby ułatwić korzystanie z bazy danych, można wprowadzić własne komunikaty sprawdzania poprawności. Zastępują one ogólne komunikaty wyświetlane przez program Access, gdy dane nie spełniają wymogów reguły poprawności. Własny komunikat sprawdzania poprawności może służyć do przekazywania określonych informacji, które pomagają użytkownikowi wprowadzać prawidłowe dane, na przykład, „Wartość pola W magazynie nie może być ujemna”.

  1. W okienku nawigacji kliknij dwukrotnie tabelę, którą chcesz zmienić.
    W programie Access zostanie otwarta tabela w widoku arkusza danych.
  2. W przypadku komunikatu sprawdzania poprawności pola wybierz pole, do którego dodano regułę poprawności.
  3. Na wstążce kliknij pozycję Pola tabeli, następnie w grupie Sprawdzanie poprawności pola kliknij pozycję Sprawdzanie poprawności, a następnie kliknij pozycję Komunikat sprawdzania poprawności pola lub Komunikat sprawdzania poprawności.
  4. W oknie dialogowym Wprowadzanie komunikatu sprawdzania poprawności wpisz treść komunikatu, który ma być wyświetlany, gdy dane nie będą zgodne z regułą poprawności, a następnie kliknij przycisk OK.

Początek strony

Dodawanie reguły poprawności dla kontrolki

Oprócz pól tabeli i rekordów także kontrolki mają właściwość Reguła poprawności, w której można wpisać wyrażenie. Załóżmy na przykład, że używasz formularza do wprowadzenia zakresu dat dla potrzeb raportu i chcesz mieć pewność, że data początkowa nie będzie wcześniejsza niż 1/1/2017. Dla pola tekstowego, w którym będzie wprowadzana data początkowa, można ustawić następujące właściwości Reguła poprawności i Tekst reguły sprawdzania poprawności :

Właściwość Ustawienie
Reguła poprawności >=#1/1/2017#
Tekst reguły poprawności Nie można wprowadzić daty wcześniejszej niż 1/1/2017.

Przy próbie wprowadzenia daty wcześniejszej niż 1/1/2017 zostanie wyświetlony komunikat oraz odpowiedni tekst z właściwości Tekst reguły sprawdzania poprawności . Jeśli w polu właściwości Tekst reguły sprawdzania poprawności nie zostanie wprowadzony żaden tekst, w programie Access zostanie wyświetlony ogólny komunikat. Gdy zostanie kliknięty przycisk OK, program Access powróci do pola tekstowego.

Ustawienie reguły poprawności pola tabeli wymusza tę regułę w całej bazie danych podczas każdej modyfikacji danego pola. Ewentualnie ustawienie reguły poprawności kontrolki w formularzu wymusza tę regułę tylko podczas używania danego formularza. Ustawienie oddzielnych reguł poprawności pól tabel i kontrolek w formularzach może się przydać, jeśli dla różnych użytkowników mają być ustanowione różne reguły.

PROCEDURA

  1. W okienku nawigacji kliknij prawym przyciskiem myszy formularz lub raport, który chcesz zmienić, a następnie w menu skrótów kliknij polecenie Widok układu lub Widok projektu.
  2. Kliknij prawym przyciskiem myszy kontrolkę, którą chcesz zmienić, a następnie w menu skrótów kliknij polecenie Właściwości. Program Access wyświetli arkusz właściwości kontrolki.
  3. Kliknij kartę Wszystkie, a następnie kliknij pole właściwości Reguła poprawności.
  4. Wpisz wyrażenie lub kliknij przycisk KonstruujObraz przycisku w polu właściwości, aby utworzyć wyrażenie za pomocą Konstruktora wyrażeń.
    Nie poprzedzaj wyrażenia operatorem = .
  5. Aby dostosować tekst wyświetlany po wprowadzeniu przez użytkownika danych niezgodnych z regułą poprawności, wpisz odpowiedni tekst we właściwości Tekst reguły spr. poprawności.

Początek strony

Grupowanie i sortowanie danych w raportach

Do definiowania poziomów grupowania i kolejności sortowania danych w raporcie służy okienko Grupowanie, sortowanie i sumowanie. Zazwyczaj grupowanie lub sortowanie odbywa się według pola wybranego z listy. Jeżeli jednak grupowanie lub sortowanie ma zostać wykonane według wartości obliczonej, można wprowadzić wyrażenie.

Grupowanie jest procesem łączenia kolumn zawierających zduplikowane wartości. Załóżmy na przykład, że baza danych zawiera informacje dotyczące sprzedaży biur z różnych miast, a jednym z raportów w bazie danych jest "Sprzedaż według miast". Zapytanie udostępniające dane dla potrzeb tego raportu grupuje dane według nazwy miasta. Tego typu grupowanie sprawia, że informacje są bardziej czytelne i zrozumiałe.

Sortowanie natomiast jest procesem określania kolejności wierszy (rekordów) w wynikach zapytania. Na przykład można posortować rekordy według wartości klucza podstawowego (lub innego zestawu wartości w innym polu) w kolejności rosnącej lub malejącej. Można również posortować je według jednego bądź większej liczby znaków w określonej kolejności, na przykład alfabetycznej.

PROCEDURA: dodawanie opcji grupowania i sortowania do raportu

  1. W okienku nawigacji kliknij prawym przyciskiem myszy raport, który chcesz zmienić, a następnie w menu skrótów kliknij polecenie Widok układu lub Widok projektu.
  2. Na wstążce kliknij pozycję Projekt raportu, a następnie w grupie Grupowanie & sumy kliknij pozycję Grupuj & sortuj. Pod raportem zostanie wyświetlone okienko Grupowanie, sortowanie i sumowanie.
  3. Aby dodać do raportu poziom grupowania, kliknij pozycję Dodaj grupę.
  4. Aby dodać do raportu kolejność sortowania, kliknij pozycję Dodaj sortowanie.
    W okienku zostanie wyświetlony nowy poziom grupowania lub kolejność sortowania oraz dodatkowo lista pól udostępniających dane do raportu. Poniższa ilustracja przedstawia typowy nowy poziom grupowania (grupowanie według kategorii) i kolejność sortowania (sortowanie według producenta) oraz listę zawierającą dostępne pola do grupowania i sortowania:
    Wybieranie opcji wyrażenia w okienku Grupowanie, sortowanie i sumowanie.
  5. Pod listą dostępnych pól kliknij pozycję wyrażenie, aby uruchomić Konstruktora wyrażeń.
  6. W polu wyrażenia (górne pole) Konstruktora wyrażeń wprowadź wyrażenie, którego chcesz użyć. Upewnij się, że wyrażenie rozpoczyna się od operatora znak równości (=).

PROCEDURA: dodawanie wyrażenia do istniejącej grupy lub kolejności sortowania

  1. W okienku nawigacji kliknij prawym przyciskiem myszy raport, który chcesz zmienić, a następnie w menu skrótów kliknij polecenie Widok układu lub Widok projektu.
  2. Kliknij poziom grupowania lub kolejność sortowania, którą chcesz zmienić.
  3. Kliknij strzałkę w dół obok listy rozwijanej Grupuj według (w przypadku poziomów grupowania) lub Sortuj według (w przypadku kolejności sortowania). Zostanie wyświetlona lista z dostępnymi polami.
  4. U dołu listy zawierającej dostępne pola kliknij pozycję wyrażenie, aby uruchomić Konstruktora wyrażeń.
  5. Wprowadź wyrażenie w polu wyrażenia (górne pole) Konstruktora wyrażeń. Upewnij się, że wyrażenie rozpoczyna się od operatora znak równości (=).

Początek strony

Decydowanie, które akcje makra są uruchamiane

W niektórych przypadkach może być konieczne wykonanie akcji lub serii akcji w makrze tylko w przypadku spełnienia określonego warunku. Załóżmy na przykład, że pewna akcja ma być wykonywana tylko wtedy, gdy wartość pola tekstowego jest większa lub równa 10. Aby ustawić tę regułę, można użyć wyrażenia w bloku Jeżeli makra w celu zdefiniowania warunku makra.

W tym przykładzie załóżmy, że pole tekstowe ma nazwę „Artykuły”. Wyrażenie ustanawiające warunek to:


[Items]>=10

Wyrażenie zastosowane w rozszerzeniu Jeżeli blok w makro.

PROCEDURA

  1. W okienku nawigacji kliknij prawym przyciskiem myszy makro, które chcesz zmienić, a następnie w menu skrótów kliknij polecenie Widok projektu.
  2. Kliknij blok Jeżeli, który chcesz zmodyfikować, lub dodaj blok Jeżeli z okienka Wykaz akcji.
  3. Kliknij górny wiersz bloku Jeżeli.
  4. Wpisz wyrażenie warunkowe w polu lub kliknij obraz przycisku przyciskuKonstruuj obok pola wyrażenia, aby rozpocząć korzystanie z Konstruktora wyrażeń.

Wpisywane wyrażenie musi być wyrażeniem logicznym, to znaczy mieć wartość albo TrueFalse. Akcje makr w bloku Jeżeli są uruchamiane tylko wtedy, gdy warunek to True.

Początek strony

Zobacz też

Korzystanie z Konstruktora wyrażeń

Wprowadzenie do wyrażeń

Przewodnik po składni wyrażeń

Przykłady wyrażeń