Turinys
Pamokoje parodyta, kaip "Excel" programoje sukurti pasirinktines duomenų patvirtinimo taisykles. Rasite keletą pavyzdžių iš E "xcel" duomenų tikrinimo formulės, leidžiančios tam tikrose ląstelėse naudoti tik skaičių arba teksto reikšmes, arba tik tekstą, prasidedantį tam tikrais ženklais, leidžiančios naudoti unikalius duomenis, užkertančios kelią pasikartojimams, ir dar daugiau.
Vakarykštėje pamokoje pradėjome nagrinėti "Excel" duomenų patvirtinimą - kokia jo paskirtis, kaip jis veikia ir kaip naudoti integruotas taisykles darbalapiuose esantiems duomenims patvirtinti. Šiandien žengsime dar vieną žingsnį toliau ir aptarsime smulkiausius pasirinktinio duomenų patvirtinimo "Excel" programoje aspektus, taip pat išbandysime keletą skirtingų patvirtinimo formulių.
Kaip sukurti pasirinktinį duomenų patvirtinimą naudojant formulę
"Microsoft Excel" turi keletą integruotų skaičių, datų ir teksto duomenų patvirtinimo taisyklių, tačiau jos apima tik pačius paprasčiausius scenarijus. Jei norite patvirtinti langelius pagal savo kriterijus, sukurkite pasirinktinę patvirtinimo taisyklę pagal formulę:
- Pasirinkite vieną ar daugiau langelių, kuriuos norite patvirtinti.
- Atidarykite dialogo langą Duomenų patvirtinimas. Šiuo tikslu spustelėkite Duomenų patvirtinimas mygtukas ant Duomenys skirtuke Duomenų įrankiai grupę arba paspauskite klavišų seką Alt> D> L (kiekvieną klavišą reikia paspausti atskirai).
- Dėl Nustatymai skirtukas Duomenų patvirtinimas dialogo lange pasirinkite Pasirinktinis į Leisti langelį ir įveskite duomenų patvirtinimo formulę į Formulė dėžutė.
- Spustelėkite GERAI .
Pasirinktinai galite pridėti pasirinktinį įvesties pranešimą ir įspėjimą apie klaidą, kurie bus rodomi, kai naudotojas pasirinks patvirtintą langelį arba įves neteisingus duomenis.
Toliau rasite keletą pasirinktinių skirtingų duomenų tipų patvirtinimo taisyklių pavyzdžių.
Pastaba. Visos "Excel" duomenų tikrinimo taisyklės, integruotos ir pasirinktinės, tikrina tik naujus duomenis, kurie įvedami į langelį sukūrus taisyklę. Nukopijuoti duomenys netikrinami, taip pat netikrinami duomenys, įvesti į langelį prieš sukuriant taisyklę. Jei norite nustatyti esamus įrašus, kurie neatitinka jūsų duomenų tikrinimo kriterijų, naudokite Apveskite ratą "Invalid Data funkcija, kaip parodyta skyrelyje Kaip rasti negaliojančius duomenis "Excel".
"Excel" duomenų patvirtinimas, kad būtų leidžiami tik skaičiai
Keista, kad nė viena iš integruotų "Excel" duomenų patvirtinimo taisyklių nėra pritaikyta labai tipiškam atvejui, kai reikia apriboti naudotojų teisę į tam tikras ląsteles įvesti tik skaičius. Tačiau tai galima lengvai padaryti naudojant pasirinktinę duomenų patvirtinimo formulę, pagrįstą funkcija ISNUMBER, kaip ši:
=ISNUMBER(C2)
Kai C2 yra aukščiausia norimo patvirtinti diapazono ląstelė.
Pastaba. Funkcija ISNUMBER leidžia naudoti bet kokias skaitines reikšmes patvirtintuose langeliuose, įskaitant sveikuosius skaičius, dešimtainius skaičius, trupmenas, taip pat datas ir laikus, kurie "Excel" programoje taip pat yra skaičiai.
"Excel" duomenų patvirtinimas, kad būtų galima naudoti tik tekstą
Jei norite priešingai - leisti tik teksto įrašus tam tikrame langelių intervale, sukurkite pasirinktinę taisyklę naudodami, pavyzdžiui, funkciją ISTEXT:
=ISTEXT(D2)
Kur D2 yra pasirinkto intervalo viršutinė ląstelė.
Leisti tekstą, prasidedantį tam tikru (-ais) simboliu (-ais)
Jei visos tam tikro intervalo reikšmės turėtų prasidėti tam tikru simboliu ar posrikiu, atlikite "Excel" duomenų tikrinimą pagal funkciją COUNTIF su pakaitiniu simboliu:
COUNTIF( ląstelė ," tekstas *")Pavyzdžiui, norėdami užtikrinti, kad visi užsakymo ID A stulpelyje prasidėtų priešdėliu "AA-", "aa-", "Aa-" arba "aA-" (neskiriant didžiųjų ir mažųjų raidžių), apibrėžkite pasirinktinę taisyklę su šia duomenų tikrinimo formule:
=COUNTIF(A2, "aa-*")
Patvirtinimo formulė su OR logika (keli kriterijai)
Jei yra 2 ar daugiau galiojančių priešdėlių, pridėkite kelias COUNTIF funkcijas, kad jūsų "Excel" duomenų patvirtinimo taisyklė veiktų pagal OR logiką:
=COUNTIF(A2,"aa-*")+COUNTIF(A2,"bb-*")
Didžiosios ir mažosios raidžių skirtumo patvirtinimo formulė
Jei simbolių raidės yra svarbios, naudokite EXACT kartu su funkcija LEFT, kad sukurtumėte konkrečiu tekstu prasidedančių įrašų patvirtinimo formulę, kurioje būtų atsižvelgiama į raidžių skirtumus:
EXACT(LEFT( ląstelė , number_of_chars ), tekstas )Pavyzdžiui, norėdami leisti tik tuos užsakymo ID, kurie prasideda "AA-" (neleidžiama naudoti nei "aa-", nei "Aa-"), naudokite šią formulę:
=EXACT(LEFT(A2,3), "AA-")
Pirmiau pateiktoje formulėje funkcija LEFT iš ląstelės A2 ištraukia pirmuosius 3 simbolius, o funkcija EXACT juos palygina su sunkiai užkoduotu poaiškiu ("AA-" šiame pavyzdyje), atsižvelgdamas į mažąsias ir didžiąsias raides. Jei abu poaiškiai tiksliai sutampa, formulė grąžina TRUE ir patvirtinimas praeina; priešingu atveju grąžinama FALSE ir patvirtinimas nepavyksta.
Leisti įrašus, kuriuose yra tam tikro teksto
Jei norite leisti įrašus, kuriuose yra tam tikras tekstas bet kurioje langelio vietoje (pradžioje, viduryje ar pabaigoje), naudokite funkciją ISNUMBER kartu su funkcija FIND arba SEARCH, priklausomai nuo to, ar norite, kad atitiktis būtų jautri didžiosioms, ar mažosioms raidėms:
- Patvirtinimas, neatsižvelgiant į didžiąsias raides: ISNUMBER(SEARCH( tekstas , ląstelė ))
- Patvirtinimas pagal didžiąsias raides: ISNUMBER(FIND( tekstas , ląstelė ))
Mūsų pavyzdiniame duomenų rinkinyje, norėdami, kad A2:A6 langeliuose būtų leidžiami tik tie įrašai, kuriuose yra tekstas "AA", naudokite vieną iš šių formulių:
Didžiųjų ir mažųjų raidžių neatsižvelgiama:
=ISNUMBER(SEARCH("AA", A2))
Raidžių skirtumai:
=ISNUMBER(FIND("AA", A2))
Formulės veikia pagal tokią logiką:
Paieškos eilutės "AA" ląstelėje A2 ieškote naudodami funkciją FIND arba SEARCH, ir abi šios funkcijos grąžina eilutės pirmojo simbolio poziciją. Jei tekstas nerandamas, grąžinama klaida. Bet kuriai skaitinei vertei, grąžintai kaip paieškos rezultatas, funkcija ISNUMBER duoda TRUE, ir duomenų patvirtinimas yra sėkmingas. Klaidos atveju ISNUMBER grąžina FALSE, ir įrašas nebus leidžiamas ląstelėje.
Duomenų tikrinimas, kad būtų galima įvesti tik unikalius įrašus ir neleisti dublikatų.
Tais atvejais, kai tam tikrame stulpelyje arba ląstelių intervale neturėtų būti dublikatų, sukonfigūruokite pasirinktinę duomenų patvirtinimo taisyklę, kad būtų leidžiami tik unikalūs įrašai. Tam naudosime klasikinę COUNTIF formulę dublikatams nustatyti:
=COUNTIF( diapazonas , topmost_cell )<=1Pavyzdžiui, norėdami įsitikinti, kad į langelius A2-A6 įvedami tik unikalūs užsakymo ID, sukurkite pasirinktinę taisyklę su šia duomenų patvirtinimo formule:
=COUNTIF($A$2:$A$6, A2)<=1
Jei įvedama unikali reikšmė, formulė grąžina TRUE ir patvirtinimas pavyksta. Jei tokia pati reikšmė jau egzistuoja nurodytame intervale (skaičius didesnis nei 1), COUNTIF grąžina FALSE ir įvestis nepatvirtinama.
Atkreipkite dėmesį, kad diapazoną užrakiname absoliučiomis ląstelių nuorodomis (A$2:$A$6), o viršutinei ląstelei (A2) naudojame santykinę nuorodą, kad formulė būtų tinkamai pritaikyta kiekvienai patvirtinto diapazono ląstelei.
Pastaba. Šios duomenų patvirtinimo formulės yra Atskirų raidžių , ji neskiria teksto didžiosiomis ir mažosiomis raidėmis.
Datų ir laikų patvirtinimo formulės
Integruotas datos patvirtinimas suteikia daugybę iš anksto nustatytų kriterijų, pagal kuriuos naudotojams leidžiama įvesti tik datas tarp dviejų nurodytų datų, didesnes, mažesnes arba lygias nurodytai datai.
Jei norite labiau kontroliuoti duomenų tikrinimą darbalapiuose, galite atkartoti integruotą funkciją naudodami pasirinktinę taisyklę arba parašyti savo formulę, kuri pranoksta integruotas "Excel" duomenų tikrinimo galimybes.
Leisti datas tarp dviejų datų
Norėdami apriboti įrašą iki datos, esančios nurodytame intervale, galite naudoti iš anksto nustatytą Datos taisyklę su kriterijumi "tarp" arba sukurti pasirinktinę patvirtinimo taisyklę, naudodami šią bendrąją formulę:
IR( ląstelė >= start_date ), ląstelė <= end_date )Kur:
- ląstelė yra aukščiausia patvirtinto diapazono ląstelė, o
- pradėti ir pabaiga datos - tai galiojančios datos, pateiktos naudojant funkciją DATE, arba nuorodos į ląsteles, kuriose yra datos.
Pavyzdžiui, norėdami leisti tik 2017 m. liepos mėnesio datas, naudokite šią formulę:
=AND(C2>=DATE(2017,7,1),C2<=DATE(2017,7,31))
Arba kai kuriose ląstelėse (šiame pavyzdyje - F1 ir F2) įveskite pradžios ir pabaigos datą ir formulėje pateikite nuorodą į šias ląsteles:
=AND(C2>=$F$1, C2<=$F$2)
Atkreipkite dėmesį, kad ribinės datos yra užrakintos absoliučiomis ląstelių nuorodomis.
Leidžiama tik darbo dienomis arba tik savaitgaliais
Jei norite apriboti naudotojo teisę įvesti tik darbo dienas arba savaitgalius, sukonfigūruokite pasirinktinę patvirtinimo taisyklę pagal funkciją WEEKDAY.
Su return_type argumentas WEEKDAY yra 2, WEEKDAY grąžina sveikąjį skaičių nuo 1 (pirmadienis) iki 7 (sekmadienis). Taigi darbo dienomis (nuo pirmadienio iki penktadienio) formulės rezultatas turėtų būti mažesnis nei 6, o savaitgaliais (šeštadienį ir sekmadienį) - didesnis nei 5.
Leisti tik darbo dienos :
SAVAITĖS DIENA( ląstelė ,2)<6Leisti tik savaitgaliai :
SAVAITĖS DIENA( ląstelė ,2)>5Pavyzdžiui, jei norite, kad į langelius C2:C6 būtų galima įrašyti tik darbo dienas, naudokite šią formulę:
=WEEKDAY(C2,2)<6
Patvirtinti datas pagal šiandienos datą
Daugeliu atvejų galite norėti naudoti šiandienos datą kaip leistino datos intervalo pradžios datą. Norėdami gauti dabartinę datą, naudokite funkciją TODAY, tada prie jos pridėkite norimą dienų skaičių ir apskaičiuokite pabaigos datą.
Pavyzdžiui, norėdami apriboti duomenų įvedimą iki 6 dienų nuo dabar (7 dienų, įskaitant šiandieną), naudosime integruotą Datos taisyklę su formule pagrįstais kriterijais:
- Pasirinkite Data į Leisti
- Pasirinkite tarp į Duomenys
- Į Pradžios data įveskite
=TODAY()
- Į Galutinė data įveskite
=TODAY() + 6
Panašiai galite apriboti naudotojų teisę įvesti datas prieš arba po šios dienos datos. Šiuo tikslu pasirinkite mažiau nei arba didesnis nei į Duomenys langelį, tada įveskite =TODAY()
į Pabaiga data arba Pradžia atitinkamai datos langelis.
Patvirtinti laiką pagal dabartinį laiką
Norėdami patvirtinti duomenis pagal esamą laiką, naudokite iš anksto nustatytą taisyklę Laikas ir savo duomenų patvirtinimo formulę:
- Į Leisti langelį, pasirinkite Laikas .
- Į Duomenys langelį, pasirinkite mažiau nei leisti tik laiką iki dabartinio laiko, arba didesnis nei leisti laiką po dabartinio laiko.
- Į Pabaigos laikas arba Pradžios laikas (priklausomai nuo to, kokius kriterijus pasirinkote ankstesniame žingsnyje), įveskite vieną iš šių formulių:
- Patvirtinti datos ir laikas pagal dabartinę datą ir laiką:
=NOW()
- Patvirtinti kartus pagal dabartinį laiką:
=TIME( VALANDA(NOW()), MINUTĖ(NOW()), SEKUNDĖ(NOW()))
- Patvirtinti datos ir laikas pagal dabartinę datą ir laiką:
Toliau pateiktoje ekrano kopijoje parodyta taisyklė, pagal kurią leidžiama naudoti tik laiką, ilgesnį už dabartinį laiką:
Neveikia pasirinktinė "Excel" duomenų patvirtinimo taisyklė
Jei jūsų formule pagrįsta duomenų patvirtinimo taisyklė neveikia taip, kaip tikėtasi, reikia patikrinti tris pagrindinius dalykus:
- Duomenų patvirtinimo formulė yra teisinga
- Patvirtinimo formulė nenurodo tuščios ląstelės
- Naudojamos tinkamos langelių nuorodos
Patikrinkite "Excel" duomenų patvirtinimo formulės teisingumą
Pirmiausia nukopijuokite patvirtinimo formulę į kurią nors ląstelę ir įsitikinkite, kad ji negrąžina klaidos, pavyzdžiui, #N/A, #VALUE arba #DIV/0!.
Jei kuriate pasirinktinė taisyklė , formulė turėtų grąžinti logines reikšmes TRUE ir FALSE arba joms prilygstančias reikšmes 1 ir 0.
Jei naudojate formule pagrįstą kriterijų integruota taisyklė (kaip tai darėme norėdami patvirtinti laiką pagal dabartinį laiką), ji taip pat gali grąžinti kitą skaitinę reikšmę.
"Excel" duomenų tikrinimo formulė neturėtų nurodyti į tuščią ląstelę
Daugelyje situacijų, jei pasirinksite Ignoruoti tuščią langą langelis (paprastai pasirenkamas pagal numatytuosius nustatymus), o vienas ar daugiau langelių, į kuriuos daroma nuoroda formulėje, yra tušti, patvirtintoje ląstelėje bus leidžiama bet kokia reikšmė.
Pateikiame paprasčiausią pavyzdį:
Absoliučios ir santykinės ląstelių nuorodos duomenų tikrinimo formulėse
Nustatydami formule pagrįstą "Excel" patvirtinimo taisyklę, nepamirškite, kad visos formulėje esančios ląstelių nuorodos yra viršutinio kairiojo langelio atžvilgiu pasirinktame diapazone.
Jei kuriate taisyklę daugiau nei vienam langeliui ir jūsų patvirtinimo kriterijai priklauso nuo specifinės ląstelės , būtinai naudokite absoliučias nuorodas į ląsteles (su ženklu $, pvz., $A$1), kitaip taisyklė teisingai veiks tik pirmoje ląstelėje. Kad geriau parodytumėte, panagrinėkite toliau pateiktą pavyzdį.
Tarkime, norite, kad į langelius D2-D5 būtų įvesti tik sveikieji skaičiai nuo 1 (mažiausia reikšmė) iki rezultato, gauto padalijus A2 iš B2. Taigi didžiausią reikšmę apskaičiuojate naudodami šią paprastą formulę =A2/B2
kaip parodyta toliau pateiktoje ekrano kopijoje:
Problema ta, kad ši iš pažiūros teisinga formulė neveiks ląstelėse D3-D5, nes santykinės nuorodos keičiasi pagal santykinę eilučių ir stulpelių padėtį. Taigi ląstelės D3 formulė pasikeis į =A3/B3
, o D4 atveju - =A4/B4
, neteisingai atliekate duomenų patvirtinimą!
Norėdami pataisyti formulę, prieš stulpelio ir eilutės nuorodas įveskite "$", kad jas užrakintumėte: =A$2/$B$2
. Arba paspauskite F4, kad perjungtumėte skirtingų tipų nuorodas.
Jei norite patvirtinti kiekvieną ląstelę pagal atskirus kriterijus, naudokite santykines ląstelių nuorodas be ženklo $, kad formulė būtų pritaikyta kiekvienai eilutei ir (arba) stulpeliui:
Kaip matote, "absoliučios tiesos" nėra, ta pati formulė gali būti teisinga arba klaidinga, priklausomai nuo situacijos ir konkrečios užduoties.
Štai kaip "Excel" programoje naudoti duomenų patvirtinimą naudojant savo formules. Norėdami geriau suprasti, nedvejodami atsisiųskite toliau pateiktą pavyzdinę darbo knygą ir išnagrinėkite taisyklių nustatymus. Dėkoju, kad perskaitėte, ir tikiuosi, kad kitą savaitę susitiksime mūsų tinklaraštyje!
Atsisiųsti praktikos sąsiuvinį
"Excel" duomenų patvirtinimo pavyzdžiai (.xlsx failas)