Turinys
Darbalapiuose gaunate daug #N/A klaidų ir norite sužinoti, ar yra būdas vietoj jų rodyti pasirinktinį tekstą? IFNA formulė - tai sprendimas, kurio jums reikia.
Kai "Excel" formulė negali ko nors nustatyti arba rasti, ji išmeta klaidą #N/A. Norėdami užfiksuoti tokią klaidą ir pakeisti ją vartotojui patogiu pranešimu, galite naudoti funkciją IFNA. Kitaip tariant, #N/A yra "Excel" būdas pasakyti, kad ieškomos reikšmės nėra duomenų rinkinyje, į kurį daroma nuoroda. IFNA yra jūsų būdas užfiksuoti ir apdoroti šią klaidą.
IFNA funkcija programoje "Excel
"Excel" funkcija IFNA skirta klaidoms #N/A gaudyti ir tvarkyti. Jei formulė įvertinama kaip #N/A, IFNA fiksuoja šią klaidą ir pakeičia ją jūsų nurodyta pasirinktine verte; priešingu atveju grąžinamas įprastas formulės rezultatas.
IFNA sintaksė
Funkcijos IFNA sintaksė yra tokia:
IFNA(value, value_if_na)Kur:
Vertė (privaloma) - formulė, reikšmė arba nuoroda, kurią reikia patikrinti, ar nėra #N/A klaidos.
Value_if_na (privaloma) - reikšmė, kurią reikia grąžinti, jei aptikta #N/A klaida.
Naudojimo pastabos
- Funkcija IFNA apdoroja tik #N/A, tačiau nepanaikina jokių kitų klaidų.
- Jei vertė argumentas yra masyvo formulė , IFNA grąžina rezultatų masyvą, po vieną kiekvienoje ląstelėje, kaip parodyta šiame pavyzdyje.
IFNA prieinamumas
Funkcija IFNA buvo įdiegta programoje "Excel 2013" ir yra prieinama visose vėlesnėse versijose, įskaitant "Excel 2016", "Excel 2019", "Excel 2021" ir "Microsoft 365".
Ankstesnėse versijose klaidas #N/A galima užfiksuoti naudojant IF ir ISNA funkcijas kartu.
Kaip naudoti funkciją IFNA programoje "Excel
Jei norite veiksmingai naudoti IFNA "Excel" programoje, vadovaukitės šiuo bendruoju metodu:
- Pirmasis argumentas ( vertė ), įrašykite formulę, kuriai įtakos turi #N/A klaida.
- Antrajame argumente ( value_if_na ), vietoj standartinio klaidos užrašo įveskite tekstą, kurį norite grąžinti. Jei norite grąžinti tuščią langelį, kai nieko nerandama, įrašykite tuščią eilutę (""").
Grįžti pasirinktinis tekstas , bendroji formulė yra tokia:
IFNA( formulė (), " pasirinktinis tekstas ")Norėdami grąžinti tuščias langelis , bendroji formulė yra tokia:
IFNA( formulė (), "")Pažiūrėkime, kaip tai veikia paprastame pavyzdyje. Tarkime, kad toliau pateiktoje lentelėje norite sužinoti, kokią vietą tam tikro mokinio balas užima tarp kitų. Kadangi duomenys surūšiuoti pagal Rezultatai stulpelyje nuo didžiausio iki mažiausio, rangas atitiks santykinę mokinio padėtį lentelėje. O kad gautumėte padėtį, galite naudoti paprasčiausią funkciją MATCH:
=MATCH(E1, A2:A10, 0)
Kadangi paieškos vertės (Neal) nėra paieškos masyve (A2:A10), įvyksta klaida #N/A.
Susidūrę su šia klaida, nepatyrę naudotojai gali pamanyti, kad su formule kažkas negerai, o jūs, kaip sąsiuvinio kūrėjas, sulauksite daugybės klausimų. Kad to išvengtumėte, galite aiškiai nurodyti, kad formulė yra teisinga, tik ji negali rasti prašomos ieškoti reikšmės. Taigi, pirmajame IFNA argumente įterpkite MATCH formulę, o antrajame argumente įveskite savo pasirinktinętekstą, mūsų atveju - "Nerastas":
=IFNA(MATCH(E1, A2:A10, 0), "Nerastas")
Dabar vietoje standartinio klaidos užrašo ląstelėje rodomas jūsų tekstas, informuojantis naudotojus, kad paieškos reikšmės duomenų rinkinyje nėra:
Kaip naudoti IFNA su VLOOKUP
Dažniausiai #N/A klaida pasitaiko funkcijose, kurios kažko ieško, pavyzdžiui, VLOOKUP, HLOOKUP, LOOKUP ir MATCH. Toliau pateiktuose pavyzdžiuose pateikiami keli tipiniai naudojimo atvejai.
1 pavyzdys. Pagrindinė IFNA VLOOKUP formulė
Norėdami užfiksuoti #N/A klaidas, kurios atsiranda, kai VLOOKUP neranda atitikmens, patikrinkite jos rezultatą naudodami funkciją IFNA ir nurodykite vertę, kuri bus rodoma vietoj klaidos. Įprasta praktika yra tokia, kad funkcija IFNA apvyniojama aplink esamą VLOOKUP formulę naudojant šią sintaksę:
IFNA(VLOOKUP(), " jūsų tekstas ")Tarkime, kad mūsų pavyzdinėje lentelėje norite gauti konkretaus mokinio (E1) balą. Tam naudojate šią klasikinę VLOOKUP formulę:
=VLOOKUP(E1, A2:B10, 2, FALSE)
Problema ta, kad Nealas nelaikė egzamino, todėl jo pavardės sąraše nėra, ir akivaizdu, kad VLOOKUP nepavyksta rasti atitikmens.
Norėdami paslėpti klaidą, VLOOKUP apvyniojame į IFNA taip:
=IFNA(VLOOKUP(E1, A2:B10, 2, FALSE), "Nelaikė egzamino")
Dabar rezultatas vartotojui neatrodo toks bauginantis ir yra daug informatyvesnis:
2 pavyzdys. IFNA VLOOKUP keliuose lapuose atlikti paiešką
IFNA funkcija taip pat praverčia atliekant vadinamąjį nuoseklusis arba prikabinta ieškoti keliuose lapuose ar skirtinguose sąsiuviniuose. Idėja ta, kad tokiu būdu įterpiamos kelios skirtingos IFNA(VLOOKUP(...)) formulės viena į kitą:
IFNA(VLOOKUP(...), IFNA(VLOOKUP(...), IFNA(VLOOKUP(...), "Nerastas"))))Jei pirminė VLOOKUP neranda nieko, jos funkcija IFNA atlieka kitą VLOOKUP, kol randama norima reikšmė. Jei visos paieškos nepavyksta, formulė grąžina nurodytą tekstą.
Tarkime, kad skirtingų klasių balai surašyti skirtinguose lapuose (pavadintuose A klasė , B klasė , ir C klasė ). Jūsų tikslas - gauti konkretaus mokinio, kurio vardas įvestas dabartinio darbalapio ląstelėje B1, balą. Kad įvykdytumėte užduotį, pasinaudokite šia formule:
=IFNA(VLOOKUP(B1, "A klasė"!A2:B5, 2, FALSE), IFNA(VLOOKUP(B1, "B klasė"!A2:B5, 2, FALSE), IFNA(VLOOKUP(B1, "C klasė"!A2:B5, 2, FALSE), "Nerastas"))))
Formulė nuosekliai ieško nurodyto pavadinimo trijuose skirtinguose lapuose tokia tvarka, kokia įterpiami VLOOKUP, ir pateikia pirmą rastą atitikmenį:
3 pavyzdys. IFNA su INDEX MATCH
Panašiai IFNA gali ištaisyti #N/A klaidas, atsiradusias dėl kitų paieškos funkcijų. Kaip pavyzdį, naudokime ją kartu su INDEX MATCH formule:
=IFNA(INDEX(B2:B10, MATCH(E1, A2:A10, 0)), "Nerastas")
Formulės esmė tokia pati kaip ir visuose ankstesniuose pavyzdžiuose - INDEX MATCH atlieka paiešką, o IFNA įvertina rezultatą ir pateikia #N/A klaidą, jei nuoroda nerandama.
IFNA pateikia kelis rezultatus
Jei vidinė funkcija (t. y. formulė, esanti vertė argumentas) grąžina kelias reikšmes, IFNA patikrins kiekvieną grąžintą reikšmę atskirai ir išves rezultatų masyvą. Pavyzdžiui:
=IFNA(VLOOKUP(D2:D4, A2:B10, 2, FALSE), "Nerastas")
"Excel" programoje "Dynamic Array Excel" ("Microsoft 365" ir "Excel 2021") aukščiausioje ląstelėje (E2) esanti įprasta formulė automatiškai išskleidžia visus rezultatus į kaimynines ląsteles ("Excel" tai vadinama išskleidimo diapazonu).
Iki dinaminių versijų ("Excel 2019" ir žemesnėse versijose) panašų efektą galima pasiekti naudojant kelių langelių masyvo formulę, kuri užbaigiama klavišų kombinacija Ctrl + Shift + Enter.
Kuo skiriasi IFNA ir IFERROR?
Priklausomai nuo pagrindinės problemos priežasties, "Excel" formulėje gali atsirasti įvairių klaidų, pavyzdžiui, #N/A, #NAME, #VALUE, #REF, #DIV/0, #NUM ir kt. Funkcija IFERROR fiksuoja visas šias klaidas, o IFNA apsiriboja tik #N/A. Kurią geriau pasirinkti? Tai priklauso nuo situacijos.
Jei norite slopinti bet kokia klaida , tada naudokite funkciją IFERROR. Ji ypač naudinga atliekant sudėtingus skaičiavimus, kai formulę sudaro kelios funkcijos, galinčios generuoti skirtingas klaidas.
Su paieškos funkcijos , geriau naudokite IFNA, nes ji rodo pasirinktinį rezultatą tik tada, kai nerandama paieškos reikšmė, ir neslepia esminių pačios formulės problemų.
Norėdami pailiustruoti skirtumą, sugrąžinkime pagrindinę IFNA VLOOKUP formulę ir "netyčia" neteisingai užrašykime funkcijos pavadinimą (VLOKUP vietoj VLOOKUP).
=IFNA(VLOKUP(E1, A2:B10, 2, FALSE), "Nelaikė egzamino")
IFNA nepanaikina šios klaidos, todėl aiškiai matyti, kad kažkas negerai su vienu iš funkcijų pavadinimų:
Pažiūrėkime, kas nutiks, jei naudosite IFERROR:
=IFERROR(VLOKUP(E1, A2:B10, 2, FALSE), "Nelaikė egzamino")
Hmm... rašoma, kad Olivia nelaikė egzamino, o tai netiesa! Taip yra todėl, kad funkcija IFERROR užfiksuoja klaidą #NAME? ir vietoj jos grąžina pasirinktinį tekstą. Tokiu atveju ji ne tik grąžina neteisingą informaciją, bet ir užgožia formulės problemą.
Štai kaip naudoti IFNA formulę "Excel" programoje. Dėkoju, kad perskaitėte, ir nekantriai laukiu jūsų mūsų tinklaraštyje kitą savaitę!
Galimi atsisiuntimai
"Excel" IFNA formulių pavyzdžiai (.xlsx failas)