Chyby vzorca sú bežné. Ak máte súbor údajov so stovkami záznamov, musia sa tu a tam vyskytnúť chyby rozdelenia na nulu a chyby # N / A.
V minulosti si predchádzanie chybám vyžadovalo herkulovské úsilie. Vedome kývnite hlavou, ak ste niekedy vyrazili =IF(ISNA(VLOOKUP(A2,Table,2,0),"Not Found",VLOOKUP(A2,Table,2,0))
. Okrem toho, že je jeho zadanie naozaj dlhé, vyžaduje dvakrát toľko VLOOKUPOV. Najskôr urobíte VLOOKUP, aby ste zistili, či VLOOKUP spôsobí chybu. Potom znova urobíte ten istý VLOOKUP, aby ste dosiahli výsledok bez chyby.
Excel 2010 predstavil výrazne vylepšené =IFERROR(Formula,Value If Error)
. Viem, že IFERROR znie ako staré funkcie ISERROR, ISERR a ISNA, ale je to úplne iné.
To je brilantný funkcie: =IFERROR(VLOOKUP(A2,Table,2,0),"Not Found")
. Ak máte 1 000 VLOOKUPOV a iba 5 návratových # N / A, potom 995, ktoré fungovali, vyžaduje iba jeden VLOOKUP. Iba 5 VLOOKUPOV vrátilo # N / A, ktoré musia prejsť na druhý argument IFERROR.
Napodiv, program Excel 2013 pridal funkciu IFNA (). Je to ako IFERROR, ale vyhľadáva iba chyby # N / A. Možno si predstaviť zvláštnu situáciu, keď sa nájde hodnota vo vyhľadávacej tabuľke, ale výslednou odpoveďou je delenie číslom 0. Ak chcete z nejakého dôvodu zachovať chybu delenia nulou, môžete na to použiť funkciu IFNA () toto.
Osoba, ktorá zostavila vyhľadávaciu tabuľku, mala samozrejme použiť IFERROR, aby na prvom mieste zabránila deleniu nulou. Na nasledujúcom obrázku je „nm“ kód bývalého manažéra pre „nezmyselné“.
Ďakujem Justinovi Fishmanovi, Stephenovi Gilmerovi a programu Excel od Joe.