Innehållsförteckning
Den här handledningen går igenom olika sätt att använda ISNA-funktionen i Excel för att hantera #N/A-fel.
När Excel inte kan hitta det som efterfrågas visas ett #N/A-fel i en cell. För att fånga upp och hantera sådana fel kan du använda ISNA-funktionen. Vad är den praktiska nyttan med det? I huvudsak hjälper den till att göra dina formler mer användarvänliga och dina kalkylblad snyggare.
ISNA-funktionen i Excel
Excel-funktionen ISNA används för att kontrollera celler eller formler för #N/A-fel. Resultatet är ett logiskt värde: TRUE om ett #N/A-fel upptäcks, FALSE annars.
Funktionen är tillgänglig i alla versioner av Excel 2000 till 2021 och Excel 365.
Syntaxen för ISNA-funktionen är så enkel som möjligt:
ISNA(värde)Var värde är det cellvärde eller den formel som du vill kontrollera för #N/A-fel.
Om du vill skapa en ISNA-formel i sin grundform anger du en cellreferens som enda argument:
=ISNA(A2)
Om den refererade cellen innehåller ett #N/A-fel får du TRUE. Om den innehåller något annat fel, värde eller en tom cell får du FALSE:
Hur man använder ISNA i Excel
Att använda ISNA-funktionen i sin rena form är inte särskilt meningsfullt i praktiken. Oftast används den tillsammans med andra funktioner för att utvärdera resultatet av en viss formel. För att göra detta är det bara att sätta in den andra formeln i värde argument från ISNA:
ISNA( din_formel ())Antag att du vill jämföra två listor (kolumnerna A och D) i nedanstående dataset och identifiera de namn som finns i båda listorna och de som endast förekommer i lista 1.
För att jämföra namnet i A3 med varje namn i kolumn D är formeln:
=MATCH(A3, $D$2:$D$9, 0)
Om ett uppslagsvärde hittas returnerar MATCH-funktionen dess relativa position i uppslagsmatrisen, annars uppstår ett #N/A-fel. För att testa resultatet av MATCH bäddar vi in den i ISNA:
=ISNA(MATCH(A3, $D$2:$D$9, 0))
Denna formel går till B3 och kopieras sedan till B14.
Nu kan du tydligt se vilka elever som har klarat alla tester (ett namn finns inte i kolumn D> MATCH returnerar #N/A> ISNA returnerar TRUE) och vilka som har minst ett misslyckat test (ett namn finns i kolumn D> inget fel> ISNA returnerar FALSE).
Tips: I Excel 365 och Excel 2021 kan du använda en modernare XMATCH-funktion i stället för MATCH.
IF ISNA-formeln i Excel
ISNA-funktionen kan endast returnera två booleska värden. Om du vill visa dina egna meddelanden använder du den i kombination med IF-funktionen:
IF(ISNA(...), " text_if_error ", " text_if_no_error ")Om vi förfinar vårt exempel lite ytterligare kan vi ta reda på vilka elever från grupp A som inte misslyckades med något prov och återge "Inga misslyckade prov" för dem. För de återstående eleverna återger vi "Underkänd". För att göra detta bäddar vi in ISNA MATCH-formeln i det logiska testet IF, så att IF blir den yttersta funktionen:
=IF(ISNA(MATCH(A3,$D$2:$D$9,0)), "Inga misslyckade tester", "Misslyckat")
Resultaten ser mycket bättre och mer intuitiva ut nu, håller du med?
Hur man använder ISNA i Excel med VLOOKUP
Kombinationen IF ISNA är en universallösning som kan användas med alla funktioner som söker efter något i en datamängd och som returnerar ett #N/A-fel när ett uppslagsvärde inte hittas.
Syntaxen för ISNA-funktionen med VLOOKUP är följande:
IF(ISNA(VLOOKUP(...), " anpassad_text ", VLOOKUP(....)))Översatt till ett mänskligt språk står det: om VLOOKUP resulterar i ett #N/A-fel, återge anpassad text, annars återge VLOOKUP:s resultat.
I vår exempeltabell antar vi att du vill visa de ämnen där eleverna inte klarade proven. För de elever som klarade alla prov kommer "Inga misslyckade prov" att visas.
För att söka upp ämnena konstruerar vi denna klassiska VLOOKUP-formel:
=VLOOKUP(A3, $D$3:$E$9, 2, FALSE)
Sedan kan du använda den i den generiska IF ISNA-formeln som vi diskuterade ovan:
=IF(ISNA(VLOOKUP(A3, $D$3:$E$9, 2, FALSE)), "Inga misslyckade tester", VLOOKUP(A3, $D$3:$E$9, 2, FALSE))
I Excel 2013 och senare versioner kan du använda IFNA-funktionen för att fånga upp och hantera #N/A-fel. Detta gör din formel kortare och lättare att läsa.
Som exempel kan vi ersätta #N/A-fel med streck ("-") och få denna eleganta lösning:
=IFNA(VLOOKUP(A3, $D$3:$E$9, 2, FALSE), "-")
Användare av Excel 365 och 2021 behöver ingen omslagsfunktion alls eftersom den moderna efterföljaren till VLOOKUP, funktionen XLOOKUP, kan hantera #N/A-fel direkt:
=XLOOKUP(A3, $D$3:$D$9, $E$3:$E$9, "-")
Resultatet blir exakt detsamma som i skärmbilden ovan.
SUMPRODUCT ISNA-formeln för att räkna #N/A-fel
Om du vill räkna #N/A-fel inom ett visst intervall använder du ISNA-funktionen tillsammans med SUMPRODUCT på detta sätt:
SUMMAPRODUKT(--ISNA( sortiment ))Här returnerar ISNA en matris med TRUE- och FALSE-värden, den dubbla negationen (--) omvandlar de logiska värdena till 1:or och 0:or och SUMPRODUCT adderar resultatet.
Om du t.ex. vill ta reda på hur många elever som klarade alla prov, ändrar du formeln MATCH för ett intervall av uppslagsvärden (A3:A14) och bäddar in den i ISNA:
=SUMPRODUCT(--ISNA(MATCH(A3:A14, D2:D9, 0)))
Formeln fastställer att 9 elever inte har några underkända prov, dvs. MATCH-funktionen returnerar 9 #N/A-fel:
Så här skapar och använder du ISNA-formler i Excel. Tack för att du läste och jag ser fram emot att se dig på vår blogg nästa vecka!
Tillgängliga nedladdningar
Exempel på ISNA-formler (.xlsx-fil)