Šiame straipsnyje aiškinama, kaip programoje "Access" kurti sąlygines (dar vadinamas Bulio logikos) reiškinius. Sąlyginė išraiška įvertinama kaip TRUE (teisinga) arba neteisinga, ir pateikia rezultatą, atitinkantį jūsų nurodytą sąlygą. Jei sąlyginėse išraiškose naudojate funkcijas, taip pat galite apibrėžti veiksmą su reikšmėmis, kurios neatitinka reiškinio sąlygos. Pavyzdžiui, galite sukurti išraišką, kuri randa visus pardavimus, kai pelno marža yra 10 procentų arba mažesnė, tada nurodykite, kad šie skaičiai būtų įvesti raudonai, arba pakeiskite reikšmes pranešimu.

Šiame straipsnyje

Sąlyginių išraiškų supratimas

Sąlyginė išraiška yra išraiškos tipas, kuris tikrina jūsų duomenis, kad galėtų matyti, ar ji atitinka sąlygą, tada veiksmas priklauso nuo rezultato. Pavyzdžiui, išraiška gali ieškoti datos reikšmių vėliau nei pateikta pradžios data, tada Rodyti klaidos pranešimą, kai bandote nustatyti ankstesnę nei nustatyta pradžios data datą.

Sąlyginės išraiškos taiko tą pačią formą ir naudoja tą pačią bazinę sintaksę kaip ir kitos išraiškos ir jas galite naudoti tokiais pačiais būdais kaip ir kiti reiškiniai:

  • Lentelės laukuose įtraukite reiškinį į lauko tikrinimo taisyklės ypatybę. Vartotojai turi įveskite reikšmes lauke, kuris atitinka reiškinio sąlygas. Pvz., jei naudojate reiškinį, pvz., >= #1/1/2000 # lauke data/laikas, vartotojai turi nurodyti reikšmes, kurios yra lygios arba vėlesnės nei sausio 1 d., 2000.

  • Formų valdikliams galite įtraukti reiškinį į valdiklio šaltinio arba tikrinimo taisyklės ypatybę. Paprastai sąlygines išraiškas įtraukiate į ypatybę tikrinimo taisyklė , o jūs įtraukiate išraiškas, kurios apskaičiuoja reikšmes į ypatybę valdiklio šaltinis . Pvz., naudojant >= #1/1/2000 # valdiklyje tikrinimo taisyklės ypatybė neleidžia vartotojams įvesti neleistinų datų. Naudojant reiškinį, pvz., Date () , ypatybė valdiklio šaltinis rodoma dabartinė data kaip numatytoji reikšmė.

  • Užklausoms galite įtraukti sąlygines išraiškas į tuščią langelį eilutėje laukas arba galite naudoti reiškinį užklausos eilutėje kriterijai . Kai naudojate išraišką eilutėje laukas , rezultatai pasirodo kaip stulpelis užklausos rezultatuose. Kai išraišką naudojate kaip esamo lauko kriterijus, reiškinys veikia kaip filtras ir apriboja užklausos grąžinamų įrašą.

    Pavyzdžiui, šį reiškinį galite naudoti užklausos eilutėje laukas : = IIf ([užsakymo data] <= #04/01/2018 #, [užsakymo data], "užsakymas įvestas po balandžio 1 d."). Išraiška nurodo datos kriterijus (<= #04/01/2018 #). Kai užklausa vykdoma, rodoma visos datos reikšmės, atitinkančios kriterijus, ir bet kurios datos reikšmės, kurios neatitinka kriterijus, pakeičiamos pranešimu "užsakymas įvestas po balandžio 1 d." Skyriuje aprašyti išraiškos įtraukimo į užklausą veiksmai paaiškina, kaip naudoti šį reiškinį užklausoje.

    Priešingai, naudojant šį reiškinį užklausos lauke kriterijai pateikia tik tuos įrašą su datomis, kurios atitinka kriterijų: betWEEN #04/01/2018 # ir #05/15/2018 #.

Daugiau informacijos apie reiškinių kūrimą ir naudojimą ieškokite straipsnyje Sužinokite, kaip kurti reiškinį.

Puslapio viršus

Sąlyginės išraiškos kūrimas

Šiame skyriuje aprašyti veiksmai paaiškina, kaip įtraukti sąlyginę išraišką į lentelę, formos arba ataskaitos valdiklį ir užklausą. Kiekviename veiksmų rinkinyje naudojama šiek tiek kitokia išraiška, kad būtų galima patikrinti lauko data/laikas reikšmes ir atlikti veiksmą, atsižvelgiant į tai, ar datų reikšmės atitinka nurodytą sąlygą.

Reiškinio įtraukimas į lentelės lauką

  1. Naršymo srityje dešiniuoju pelės mygtuku spustelėkite norimą keisti lentelę, tada kontekstiniame meniu spustelėkite Dizaino rodinys.

  2. Stulpelyje duomenų tipas spustelėkite lauką data/laikas.

  3. Dalies lauko ypatybėsskirtuke Bendrasis spustelėkite ypatybės tikrinimo taisyklė lauką ir įveskite šį reiškinį:

    >= #01/01/2000 #

    Pastaba: Jums nereikia naudoti JAV datos formato. Galite naudoti savo šalies/regiono arba lokalės datos formatą. Tačiau datos reikšmę reikia supa su svaro ženklais (#), kaip parodyta.

  4. Spustelėkite stulpelį, esantį prie tikrinimo tekstas , ir įveskite šią teksto eilutę:

    Data turi būti didesnė nei sausio 1 d., 2000.

    Dar kartą galite naudoti vietinį datos formatą.

  5. Įrašykite savo atliktus ir perjunkite duomenų lapo rodinį. Norėdami tai padaryti, dešiniuoju pelės mygtuku spustelėkite lentelės dokumento skirtuką ir kontekstiniame meniu spustelėkite duomenų lapo rodinys .

  6. Įveskite datos reikšmę lauke data/laikas, ankstesnę nei sausio 1 d., 2000. Programa "Access" rodo ypatybėje tikrinimo taisyklė nurodytą pranešimą, o jūs negalite išeiti iš lauko, nebent įvedate reikšmę, kurią jūsų reiškinys vertina kaip True.

Reiškinio įtraukimas į valdiklį

  1. Naršymo srityje dešiniuoju pelės mygtuku spustelėkite norimą keisti formą ir kontekstiniame meniu spustelėkite dizaino rodinys .

  2. Dešiniuoju pelės mygtuku spustelėkite valdiklį, susietą su lauku Data/laikas, tada kontekstiniame meniu spustelėkite Ypatybės .

    Rodomas valdiklio ypatybių lapas.

  3. Skirtuke duomenys arba skirtuke Visi spustelėkite lauką, esantį prie tikrinimo taisyklė , ir įveskite šį reiškinį:

    >= #01/01/2000 #

    Pastaba: Jums nereikia naudoti JAV datos formato. Galite naudoti savo šalies/regiono arba lokalės datos formatą. Tačiau datos reikšmę reikia supa su svaro ženklais (#), kaip parodyta.

  4. Spustelėkite stulpelį, esantį prie tikrinimo tekstas , ir įveskite šią teksto eilutę:

    Data turi būti didesnė nei sausio 1 d., 2000.

  5. Įrašykite savo atliktus pakitimus ir grįžkite į formos rodinį. Norėdami tai padaryti, dešiniuoju pelės mygtuku spustelėkite formos dokumento skirtuką ir kontekstiniame meniu spustelėkite formos rodinys .

Reiškinio įtraukimas į užklausą

  1. Naršymo srityje dešiniuoju pelės mygtuku spustelėkite norimą keisti užklausą, tada laikinajame meniu spustelėkite Dizaino rodinys

  2. Dizaino tinklelio eilutėje laukas spustelėkite tuščią langelį ir įveskite šį reiškinį:

    = IIf ([Field_Name] <= #04/01/2018 # [Field_Name], "data vėlesnė nei balandžio 1 d., 2018")

    Kai įvedate reiškinį, įsitikinkite, kad abu Field_Name egzemplioriai pakeičiami jūsų datos/laiko lauko pavadinimu. Be to, jei jūsų lentelėje nėra datų iki balandžio 1 d., 2018, pakeiskite išraiškos datas, kad galėtumėte dirbti su savo duomenimis.

  3. Įrašykite savo atliktus pakitimus, tada spustelėkite vykdyti , kad peržiūrėtumėte rezultatus.

Reiškinys veikia taip: pirmasis argumentas (= IIf ([Field_Name] <= #04/01/2018 #) nurodo sąlygą, kad duomenys turi būti tenkinami – datos turi būti "2018" arba ankstesnės nei balandžio 1 d. Antras argumentas ([Field_Name]) nurodo, ką vartotojai mato, kai sąlyga yra teisinga – lauko datas. Trečiajame argumente ("data vėlesnė nei balandžio 1 d." 2018 ")) nurodomas pranešimas, kad vartotojai mato, kada duomenys neatitinka sąlygų.

Tęsdami neužmirškite, kad ne visos sąlyginės išraiškos naudoja funkciją IIf . Be to, Atminkite, kad funkcija IIf yra reiškinio, kuriam reikia argumentų, dalis, o ne pati išraiška.

Daugiau informacijos apie reiškinius ir jų naudojimo būdus rasite straipsnyje Sužinokite, kaip kurti reiškinį.

Puslapio viršus

Sąlyginių išraiškų pavyzdžiai

Toliau pateiktoje lentelėje pateikti keli būdai, kaip apskaičiuoti tikrąją ir klaidingą reikšmę. Šios išraiškos naudoja funkciją IIf (iš karto), kad nustatytų, ar sąlyga yra teisinga, ar neteisinga, tada grąžina vieną reikšmę, jei sąlyga yra TRUE, ir kitą reikšmę, jei sąlyga yra neteisinga.

Daugiau informacijos ieškokite straipsnyje funkcija IIf .

Reiškinys

Aprašas

=IIf([Patvirtinta] = "Taip", "Užsakymas patvirtintas", "Užsakymas nepatvirtintas")

Rodomas pranešimas "užsakymas patvirtintas", jei patvirtinto lauko reikšmė yra taip; Priešingu atveju rodomas pranešimas "užsakymas nepatvirtintas."

= IIf (IsNull ([šalis/regionas]), "", [šalis/regionas])

Rodoma tuščia eilutė, jei lauko šalis/regionas reikšmė yra neapibrėžta; Priešingu atveju rodoma lauko šalis/regionas reikšmė.

= IIf (IsNull ([regionas]), [Miestas] & "" & [pašto indeksas], [Miestas] & "" & [regionas] & "& [pašto indeksas])

Rodomos laukų Miestas ir pašto indeksas reikšmės, jei lauko regionas reikšmė yra neapibrėžta; kitu atveju rodomos laukų Miestas, regionas ir pašto indeksas reikšmės.

= IIf (IsNull ([reikalaujama data]-[išsiuntimo data]), "tikrinti, ar yra trūkstama data", [reikalaujama data]-[išsiuntimo data])

Rodomas pranešimas "tikrinti, ar yra trūkstama data", jei rezultatas, gautas atėmus lauko išsiuntimo data reikšmę, yra NULL; Priešingu atveju rodomas skirtumas tarp laukų Reikalaujama_data data ir išsiuntimo data reikšmių.

Puslapio viršus

Reikia daugiau pagalbos?

Tobulinkite savo įgūdžius
Ieškoti mokymo
Pirmiausia gaukite naujų funkcijų
Prisijungti prie "Microsoft Insider"

Ar ši informacija buvo naudinga?

Ar esate patenkinti vertimo kokybe?
Kas turėjo įtakos jūsų patirčiai?

Dėkojame už jūsų atsiliepimus!

×