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

W tym artykule wyjaśniono, jak tworzyć wyrażenia warunkowe (nazywane również wyrażeniami logicznymi) w programie Access. Wyrażenie warunkowe ma wartość prawda lub fałsz, a następnie zwraca wynik spełniający określony warunek. Jeśli używasz funkcji w wyrażeniach warunkowych, możesz również określić akcję dla wartości, które nie spełniają warunku w wyrażeniu. Można na przykład utworzyć wyrażenie, które znajdzie całą sprzedaż z marżą zysku w wysokości 10 procent lub mniejszą, a następnie określić, że te liczby mają być wyświetlane na czerwono, lub zamienić wartości na komunikat.

W tym artykule

Opis wyrażeń warunkowych

Wyrażenie warunkowe to typ wyrażenia, które testuje dane w celu sprawdzenia, czy spełnia warunek, a następnie wykonuje akcję w zależności od wyniku. Na przykład wyrażenie może szukać wartości dat późniejszych niż określona data rozpoczęcia, a następnie wyświetlać komunikat o błędzie podczas próby wprowadzenia daty wcześniejszej niż zdefiniowana data rozpoczęcia.

Wyrażenia warunkowe mają ten sam formularz i mają tę samą podstawową składnię co inne wyrażenia. Można ich używać w taki sam sposób, jak w przypadku innych wyrażeń:

  • W przypadku pól tabeli wyrażenie jest dodawane do właściwości Reguła poprawności tego pola. Użytkownicy muszą następnie wprowadzać wartości w polu, które są zgodne z warunkami w wyrażeniu. Jeśli na przykład w polu Data/godzina zostanie użyte wyrażenie, takie jak >=#2000-01-01 #, użytkownicy muszą wprowadzić wartości równe 1 stycznia 2000 lub późniejsze.

  • W przypadku kontrolek w formularzach możesz dodać wyrażenie do właściwości Źródło kontrolki lub Reguła poprawności kontrolki. Zazwyczaj do właściwości Reguła poprawności dodaje się wyrażenia warunkowe i do właściwości Źródło kontrolki są dodawane wyrażenia obliczające wartości. Na przykład użycie >=#2000-01-01# we właściwości Reguła poprawności kontrolki uniemożliwia użytkownikom wprowadzenie nieprawidłowej daty. Użycie wyrażenia, takiego jak Date() we właściwości Źródło kontrolki , powoduje wyświetlenie bieżącej daty jako wartości domyślnej.

  • W przypadku zapytań możesz dodać wyrażenia warunkowe do pustej komórki w wierszu Pole lub użyć wyrażenia w wierszu Kryteria zapytania. W przypadku użycia wyrażenia w wierszu Pole wyniki są wyświetlane jako kolumna w wynikach zapytania. Jeśli wyrażenie jest używane jako kryterium dla istniejącego pola, wyrażenie działa jako filtr i ogranicza rekordy zwracane przez zapytanie.

    Możesz na przykład użyć tego wyrażenia w wierszu Pole zapytania: =IIf([Data zamówienia]<=#2018-04-01#,[Data zamówienia]"Zamówienie wprowadzone po 1 kwietnia"). Wyrażenie określa kryterium daty (<=#2018-04-01#). Po uruchomieniu zapytania są wyświetlane wszystkie wartości dat spełniające kryterium, a wszystkie wartości dat, które nie spełniają kryterium, są zastępowane komunikatem "Kolejność wprowadzona po 1 kwietnia". W procedurach opisanych w sekcji Dodawanie wyrażenia do zapytania wyjaśniono, jak używać tego wyrażenia w zapytaniu.

    Natomiast użycie tego wyrażenia w polu Kryteria zapytania powoduje zwrócenie tylko tych rekordów, które mają daty spełniające kryterium: Podaj wartość #2018-04-01# AND #2018-05-15#.

Aby uzyskać więcej informacji na temat tworzenia i używania wyrażeń, zobacz artykuł Dowiedz się, jak tworzyć wyrażenia.

Początek strony

Twórca wyrażenia warunkowego

W procedurach w tej sekcji wyjaśniono, jak dodać wyrażenie warunkowe do tabeli, kontrolki w formularzu lub raporcie i zapytania. Każdy zestaw kroków używa nieco innego wyrażenia do testowania wartości w polu typu Data/godzina i podejmowania akcji w zależności od tego, czy wartości dat spełniają określony warunek.

Dodawanie wyrażenia do pola tabeli

  1. W okienku nawigacji kliknij prawym przyciskiem myszy tabelę, którą chcesz zmienić, i w menu skrótów kliknij polecenie Widok projektu.

  2. W kolumnie Typ danych kliknij pole Data/godzina.

  3. W obszarze Właściwości pola na karcie Ogólne kliknij pole właściwości Reguła poprawności i wpisz następujące wyrażenie:

    >=#2000-01-01#

    Uwaga: Nie trzeba używać formatu daty w Stanach Zjednoczonych. Możesz użyć formatu daty dla swojego kraju/regionu lub ustawień regionalnych. Wartość daty należy jednak otoczyć znakami numeru (#), jak pokazano.

  4. Kliknij kolumnę obok pozycji Tekst sprawdzania poprawności i wpisz ten ciąg tekstowy:

    Data musi być większa niż 1 stycznia 2000.

    Ponownie możesz użyć lokalnego formatu daty.

  5. Zapisz zmiany i przełącz się do widoku arkusza danych. Aby to zrobić, kliknij prawym przyciskiem myszy kartę dokumentu tabeli, a następnie w menu skrótów kliknij polecenie Widok arkusza danych .

  6. Wpisz wartość daty w polu Data/godzina wcześniejsza niż 1 stycznia 2000. Program Access wyświetli komunikat określony w polu właściwości Reguła poprawności i nie będzie można opuścić tego pola, chyba że zostanie wprowadzona wartość, która zostanie obliczona jako prawdziwa.

Dodawanie wyrażenia do kontrolki

  1. W okienku nawigacji kliknij prawym przyciskiem myszy formularz, który chcesz zmienić, a następnie w menu skrótów kliknij polecenie Widok projektu .

  2. Kliknij prawym przyciskiem myszy kontrolkę powiązaną z polem typu Data/godzina, a następnie w menu skrótów kliknij polecenie Właściwości .

    Zostanie wyświetlony arkusz właściwości kontrolki.

  3. Na karcie Dane lub Wszystkie kliknij pole obok pozycji Reguła poprawności i wpisz następujące wyrażenie:

    >=#2000-01-01#

    Uwaga: Nie trzeba używać formatu daty w Stanach Zjednoczonych. Możesz użyć formatu daty dla swojego kraju/regionu lub ustawień regionalnych. Wartość daty należy jednak otoczyć znakami numeru (#), jak pokazano.

  4. Kliknij kolumnę obok pozycji Tekst sprawdzania poprawności i wpisz ten ciąg tekstowy:

    Data musi być większa niż 1 stycznia 2000.

  5. Zapisz zmiany i przełącz się z powrotem do widoku formularza. W tym celu kliknij prawym przyciskiem myszy kartę dokumentu formularza, a następnie w menu skrótów kliknij polecenie Widok formularza .

Dodawanie wyrażenia do zapytania

  1. W okienku nawigacji kliknij prawym przyciskiem myszy kwerendę, którą chcesz zmienić, a następnie w menu skrótów kliknij polecenie Widok projektu.

  2. Kliknij pustą komórkę w wierszu Pole siatki projektu i wpisz następujące wyrażenie:

    =IIf([Field_Name]<=#2018-04-01# , [Field_Name] , "Data późniejsza niż 1 kwietnia 2018")

    Podczas wpisywania wyrażenia upewnij się, że oba wystąpienia Field_Name są zamieniane na nazwę pola Typu data/godzina. Ponadto jeśli tabela nie zawiera dat starszych niż 1 kwietnia 2018 r., zmień daty w wyrażeniu, aby działały z danymi.

  3. Zapisz zmiany, a następnie kliknij pozycję Uruchom , aby wyświetlić wyniki.

Wyrażenie działa w następujący sposób: Pierwszy argument (=IIf([Field_Name]<=#2018-04-01#) określa warunek, który muszą spełnić dane — daty muszą mieć datę wcześniejszą niż 1 kwietnia 2018 r. Drugi argument ([Field_Name]) określa, co użytkownicy widzą, gdy warunek jest prawdziwy — daty w polu. Trzeci argument ("Data późniejsza niż 1 kwietnia 2018")) określa komunikat wyświetlany użytkownikom, gdy dane nie spełniają tego warunku.

Podczas pracy pamiętaj, że nie wszystkie wyrażenia warunkowe używają funkcji IIf . Ponadto należy pamiętać, że funkcja IIf jest częścią wyrażenia wymagającą argumentów, a nie samego wyrażenia.

Aby uzyskać więcej informacji o wyrażeniach i sposobach ich używania, zobacz artykuł Dowiedz się, jak tworzyć wyrażenia.

Początek strony

Przykłady wyrażeń warunkowych

Wyrażenia w poniższej tabeli przedstawiają niektóre sposoby obliczania wartości prawda i fałsz. W tych wyrażeniach użyto funkcji IIf (Natychmiastowe jeżeli) w celu określenia, czy warunek jest prawdziwy, czy fałsz, a następnie zwraca jedną wartość, jeśli warunek jest prawdziwy, a inną wartość, jeśli warunek jest fałszywy.

Aby uzyskać więcej informacji, zobacz artykuł Funkcja IIf .

Wyrażenie

Opis

=IIf([Potwierdzono] = "Tak", "Zamówienie potwierdzono", "Zamówienia nie potwierdzono")

Wyświetla komunikat "Zamówienie potwierdzone", jeśli wartość pola Potwierdzone to Tak. W przeciwnym razie zostanie wyświetlony komunikat "Zamówienie nie zostało potwierdzone".

=IIf(IsNull([Kraj/region]);" ", [Kraj/region])

Wyświetla pusty ciąg, jeśli wartość pola Kraj/region ma wartość Null. W przeciwnym razie zostanie wyświetlona wartość pola Kraj/region.

=IIf(IsNull([Region]);[Miasto]&" "& [Kod Pocztowy], [Miasto]&" "&[Region]&" " &[Kod Pocztowy])

Wyświetla wartości pól Miasto i Kod Pocztowy, jeśli wartość pola Region ma wartość Null. W przeciwnym razie wyświetlane są wartości pól Miasto, Region i Kod Pocztowy.

=IIf(IsNull([DataWysyłki] - [DataWysyłki]), "Sprawdź brakującą datę", [DataWymagane] - [DataWysyłki])

Wyświetla komunikat "Sprawdź brak daty", jeśli wynikiem odejmowania wartości pola DataWysyłki od pola RequiredDate jest Null. W przeciwnym razie wyświetla różnicę między wartościami pól DataDate I DataWysyłki.

Początek strony

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.