Mall

Denna handledning visar hur du använder Excel IFERROR -funktionen för att fånga formelfel, ersätta dem med en annan formel, tomt värde, 0 eller ett anpassat meddelande.

IFERROR Funktionsöversikt

IFERROR -funktionen kontrollerar om en formel resulterar i ett fel. Om FALSE, returnera det ursprungliga resultatet av formeln. Om SANT, returnera ett annat specificerat värde.

IFERROR Syntax

Om du vill använda funktionen IFERROR Excel -kalkylblad väljer du en cell och skriver:
= FEL
Lägg märke till hur IFERROR -formelinmatningarna visas:

IFERROR -funktion Syntax och ingångar:

= IFERROR (VALUE, value_if_error)

värde - Ett uttryck. Exempel: 4/A1

värde_if_fel - Värde eller beräkning som ska utföras om föregående ingång resulterar i ett fel. Exempel 0 eller “” (tomt)

Vad är IFERROR -funktionen?

IFERROR -funktionen faller under kategorin logiska funktioner i Microsoft Excel, som inkluderar ISNA, ISERROR och ISERR. Alla dessa funktioner hjälper till att upptäcka och hantera formelfel.

IFERROR låter dig utföra en beräkning. Om beräkningen gör inte resulterar i ett fel, då visas beräkningsresultatet. Om beräkningen gör resulterar i ett fel då en annan beräkning utförs (eller ett statiskt värde som 0, tomt eller någon text matas ut).

När skulle du använda IFERROR -funktionen?

  • När du delar nummer för att undvika fel som orsakas av att dividera med 0
  • Vid sökningar för att förhindra fel om värdet inte hittas.
  • Om du vill utföra en annan beräkning om det första resulterar i ett fel (t.ex. sök upp ett värde i en 2nd tabell om den inte finns i den första tabellen)

Ohanterade formelfel kan orsaka fel i din arbetsbok, men synliga fel gör också att ditt kalkylblad blir mindre synligt tilltalande.

Om fel Då 0

Låt oss titta på ett grundläggande exempel. Nedan delar du två nummer. Om du försöker dela med noll får du ett felmeddelande:

Sätt i stället in beräkningen inom IFERROR -funktionen och om du dividerar med noll kommer ett 0 ut istället för ett fel:

= FEL (A2/B2,0)

Om fel då tomt

I stället för att ställa in fel till 0 kan du ställa in dem på 'tomt' med dubbla citat (""):

= FEL (A2/B2, "")

Vi kommer att titta på fler IFERROR -användningar med VLOOKUP -funktionen …

IFERROR med VLOOKUP

Sökfunktioner som VLOOKUP kommer att generera fel om uppslagsvärdet inte hittas. Som visas ovan kan du använda IFERROR -funktionen för att ersätta fel med ämnen (“”) eller 0: or:

Om fel, gör något annat

IFERROR -funktionen kan också användas för att utföra en andra beräkning om den första beräkningen resulterar i ett fel:

= IFERROR (VLOOKUP (A2, LookupTable1! $ A $ 2: $ B $ 4,2, FALSE), VLOOKUP (A2, LookupTable2! $ A $ 2: $ B $ 4,2, FALSE))

Om data inte finns i "LookupTable1" utförs en VLOOKUP på "LookupTable2" istället.

Fler exempel på IFERROR -formler

Kapslad IFERROR - VLOOKUP Flera ark

Du kan bo en IFERROR inuti en annan IFERROR för att utföra tre separata beräkningar. Här kommer vi att använda två IFERROR för att utföra VLOOKUPs på 3 separata kalkylblad:

= IFERROR (VLOOKUP (A2, LookupTable1! $ A $ 2: $ B $ 4,2, FALSE), IFERROR (VLOOKUP (A2, LookupTable2! $ A $ 2: $ B $ 4,2, FALSE), VLOOKUP (A2, LookupTable3! $ A $ 2: $ B $ 4,2, FALSE)))

Index / Match & XLOOKUP

Självklart kommer IFERROR också att fungera med Index / Match- och XLOOKUP -formler.

IFERROR XLOOKUP

XLOOKUP -funktionen är en avancerad version av VLOOKUP -funktionen.

IFERROR INDEX / MATCH

Du kan också leta upp värden med hjälp av INDEX- och MATCH -funktioner i Excel.

IFERROR i matriser

Arrayformler i Excel används för att utföra flera beräkningar genom en enda formel. Låt oss anta att det finns tre kolumner i året, försäljning och genomsnittligt pris. Du kan ta reda på den totala mängden med följande formel i E -kolumnen.

{= SUMMA ($ B $ 2: $ B $ 4/$ C $ 2: $ C $ 4)}

Formeln fungerar bra tills divisorområdet får en tom cell eller nollor. Som ett resultat får du se #DIV/0! -Felet igen.

Den här gången kan du använda IFERROR -funktionen så här:

{= SUMMA (HVISFEL ($ B $ 2: $ B $ 4/$ C $ 2: $ C $ 4,0))}

Observera att IFERROR -funktionen måste vara kapslad inuti SUM -funktionen, annars gäller IFERROR summan och inte varje enskilt objekt i matrisen.

IFNA kontra IFERROR

IFNA -funktionen fungerar exakt samma som IFERROR -funktionen förutom att IFNA -funktionen bara kommer att få #N/A -fel. Detta är extremt användbart när du arbetar med uppslagsfunktioner: vanliga formelfel kommer fortfarande att detekteras, men inget fel visas om sökvärdet inte hittas.

= IFNA (VLOOKUP (A2, LookupTable1! $ A $ 2: $ B $ 4,2, FALSE), "Hittades inte")

Om FEL

Om du fortfarande använder Microsoft Excel 2003 eller en äldre version kan du ersätta IFERROR med en kombination av IF och ISERROR. Här är ett kort exempel:

= OM (FEL (A2/B2), 0, A2/B2)

IFERROR i Google Kalkylark

IFERROR -funktionen fungerar exakt samma i Google Kalkylark som i Excel:

IFERROR Exempel i VBA

VBA har inte en inbyggd IFERROR Fucntion, men du kan också komma åt Excel IFERROR-funktionen från VBA:

Dim n som long n = Application.WorksheetFunction.IfError (Value, value_if_error)

Application.WorksheetFunction ger dig tillgång till många (inte alla) Excel -funktioner i VBA.

Vanligtvis används IFERROR vid avläsning av värden från celler. Om en cell innehåller ett fel kan VBA ge ett felmeddelande när du försöker bearbeta cellvärdet. Prova detta med exempelkoden nedan (där cell B2 innehåller ett fel):

Sub IFERROR_VBA () Dim n As Long, m As Long 'IFERROR n = Application.WorksheetFunction.IfError (Range ("b2"). Value, 0)' No IFERROR m = Range ("b2"). Value End Sub

Koden tilldelar cell B2 en variabel. Den andra variabeltilldelningen ger ett fel eftersom cellvärdet är #N/A, men det första fungerar bra på grund av IFERROR -funktionen.

Du kan också använda VBA för att skapa en formel som innehåller IFERROR -funktionen:

Område ("C2"). FormulaR1C1 = "= IFERROR (RC [-2]/RC [-1], 0)"

Felhantering i VBA är mycket annorlunda än i Excel. Vanligtvis använder du VBA -felhantering för att hantera fel i VBA. VBA -felhantering ser ut så här:

SubtestWS () MsgBox DoesWSExist ("test") Avsluta underfunktionen DoesWSExist (wsName As String) As Boolean Dim ws As Worksheet On Error Resume Next Set ws = Sheets (wsName) 'If Error WS does not exist If Err.Number 0 Then DoesWSExist = False Else DoesWSExist = True End If On Error GoTo -1 End Function

Lägg märke till att vi använder Om Err.Number 0 Då för att identifiera om ett fel har inträffat. Detta är ett typiskt sätt att fånga fel i VBA. IFERROR -funktionen har dock vissa användningsområden vid interaktion med Excel -celler.

IFERROR Övningsövningar + Exempel

Dubbelklicka i en cell för att se dess formel och redigera.

att göra:

ta bort kalkylbladsexempel längst ner …

att testa / tänka på:

  • bild vs gif överst
  • uppmärksamma interaktiva exempel på lektionen?
  • märka om / omformulera kodblock …
  • TOC på toppen? ta bort dem från dessa sidor och lägg till [TOC] manuellt?
    • sätta "excel, googlesheets" VBA -länkar ovanpå och kanske bli av med TOC? “IFERROR -funktion finns i …”
  • hur är det med några andra bilder … som en Excel -ikon eller Google -blad eller VBA för att det ska se snyggare ut
    • jag tror att se utkast till e -post där excel -logotypen används och lägg till det någonstans …. och gör det till en snygg rubrik … samma sak med g -ark och vba!
  • gör teckenstorleken mindre på plats!
  • fixa CSS … TOC, Syntaxområde … etc.!

lägg till en nedladdningsknapp för att ladda ner kalkylbladet + be om e -post efter nedladdningen …

eller gör något som mallproducenterna gör … där de ber dig att fylla i en undersökning

Du kommer att bidra till utvecklingen av webbplatsen, dela sidan med dina vänner

wave wave wave wave wave