Combining AND, OR, NOT
Pyyhkäise näyttääksesi valikon
Miksi tarvitset useita ehtoja
Yksi ehto ei yleensä riitä todellisiin liiketoimintasääntöihin. Käytännössä validointilogiikka kuuluu usein näin:
- "Hyväksy tämä vain, jos X on tosi ja Y on tosi";
- "Hyväksy tämä, jos X tai Y täyttyy";
- "Hyväksy tämä vain, jos X ei pidä paikkaansa".
Excelin AND-, OR- ja NOT-funktioilla voit yhdistää useita loogisia tarkistuksia yhteen kaavaan — juuri tätä mukautettu validointi tarvitsee.
AND — Kaikkien ehtojen on täytyttävä
AND palauttaa TRUE vain, kun kaikki sen sisällä olevat ehdot täyttyvät. Jos yksikin epäonnistuu, koko kaava palauttaa FALSE ja syöte hylätään.
Syntaksi: =AND(condition1, condition2, ...)
Esimerkki — Yksikköhinta sallituissa rajoissa tuoteryhmälle:
Kaikkien tuotteiden hinnan tulee olla välillä 150–2000. Oletetaan, että Unit Price on sarakkeessa I:
=AND(I2>=150, I2<=2000)
Molempien rajojen on täytyttävä samanaikaisesti — liian pieni tai suuri arvo hylätään.
Excel-versiosta ja alueasetuksista riippuen kaavoissa voidaan käyttää joko pilkkua , tai puolipistettä ; argumenttien erottimena.
Esimerkiksi:
=AND(I2>=150, I2<=2000)
=AND(I2>=150; I2<=2000)
OR — Vähintään yhden ehdon on oltava tosi
OR palauttaa TRUE, kun yksikin sen sisällä olevista ehdoista täyttyy. Vain jos kaikki ehdot epäonnistuvat, se palauttaa FALSE.
Syntaksi: =OR(condition1, condition2, ...)
Esimerkki — Alennus sallitaan vain tietyillä alueilla:
Alennukset ovat sallittuja vain East- tai West-alueilla. Oletetaan, että Region on sarakkeessa C ja Discount % sarakkeessa J:
=OR(C2="East", C2="West", J2=0)
Tämä tarkoittaa: hyväksy merkintä, jos alue on East tai West, tai jos alennusta ei ole lainkaan.
NOT — Kääntää tuloksen
NOT muuttaa TRUE arvon FALSE:ksi ja FALSE arvon TRUE:ksi. Käytä sitä, kun on helpompi määritellä, mikä ei ole sallittua kuin mikä on.
Syntaksi: =NOT(condition)
Esimerkki — Status ei voi olla Closed, jos End Date on tyhjä:
=NOT(AND(M2="Closed", L2=""))
Tämä tarkoittaa: hylkää merkintä, jos Status on Closed JA End Date on tyhjä. Kaikki muut yhdistelmät hyväksytään.
Kaikkien kolmen yhdistäminen
Todellinen voima tulee, kun näitä funktioita yhdistetään sisäkkäin. Syvyydelle ei ole rajoitusta — pidä logiikka vain luettavana.
Esimerkki — Määrän on oltava positiivinen JA alennuksen sallitulla välillä:
=AND(H2>0, OR(J2=0, AND(J2>=5, J2<=30)))
Tämä tarkoittaa: määrän on oltava suurempi kuin nolla, ja alennuksen on oltava joko nolla tai välillä 5–30.
Käytännön vinkkejä
- Rakenna vaiheittain — testaa jokainen ehto erikseen ennen niiden yhdistämistä;
- Käytä apusaraketta rakentamisen aikana — liitä kaava tyhjään sarakkeeseen nähdäksesi
TRUE/FALSE-tulokset rivikohtaisesti ennen kuin lukitset sen validointiin; - Pidä kaava selkeänä — jos kaavassa on yli 3–4 ehtoa, harkitse apusarakkeen käyttöä tai yksinkertaisemman säännön jakamista kahteen validointiin selkeyden vuoksi.
Tehtävä
-
Lisää
AND-validointi Unit Price -sarakkeeseen:- Kaava:
=AND(I2>=50, I2<=5000) - Virheilmoitus: "Unit Price must be between 50 and 5000"
- Kaava:
-
Lisää
OR-validointi Discount % -sarakkeeseen:- Kaava:
=OR(C2="East", C2="West", J2=0) - Virheilmoitus: "Discounts are only allowed for East and West regions"
- Kaava:
-
Lisää
NOT-validointi Status -sarakkeeseen:- Kaava:
=NOT(AND(M2="Closed", L2="")) - Virheilmoitus: "Status cannot be Closed while End Date is empty"
- Kaava:
-
Testaa jokainen sääntö sekä kelvollisilla että virheellisillä arvoilla — varmista, että kaikki kolme toimivat odotetusti;
-
Liitä tehtävän 3 kaava apusarakkeeseen ja tarkastele TRUE/FALSE-tuloksia rivikohtaisesti ennen sen poistamista.
Kiitos palautteestasi!
Kysy tekoälyä
Kysy tekoälyä
Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme