Iferror gebruiken in vba (met voorbeelden)


U kunt de volgende basissyntaxis gebruiken om de ALS- functie in VBA te gebruiken om een specifieke waarde in een cel weer te geven als er een fout wordt aangetroffen in een Excel-formule:

 SubIfError ()
    Dim i As Integer
    
    For i = 2 To 11
    Cells(i, 4).Value = WorksheetFunction.IfError(Cells(i, 3).Value, " Formula Error ")
    Next i
End Sub

In dit specifieke voorbeeld wordt gecontroleerd of elke cel in de rijen 2 tot en met 11 van de derde kolom van het huidige blad een foutwaarde heeft.

Als er een foutwaarde wordt aangetroffen, wordt een „Formulefout“-waarde toegewezen aan de overeenkomstige cel in de vierde kolom, anders wordt de numerieke waarde in de derde kolom toegewezen aan de overeenkomstige waarde in de vierde kolom.

Het volgende voorbeeld laat zien hoe u deze syntaxis in de praktijk kunt gebruiken.

Voorbeeld: IFERROR gebruiken in VBA

Stel dat we de volgende gegevensset in Excel hebben die de totale omzet en verkochte eenheden van een product in verschillende winkels toont:

Kolom C gebruikt een formule om de omzet te delen door verkochte eenheden om de omzet per eenheid te krijgen.

Houd er echter rekening mee dat de formule de waarde #DIV/0 oplevert! in sommige cellen waar we proberen door nul te delen.

Stel dat we een nieuwe kolom willen maken waarin in plaats daarvan ‚Formulefout‘ voor deze cellen wordt weergegeven.

We kunnen hiervoor de volgende macro maken:

 SubIfError ()
    Dim i As Integer
    
    For i = 2 To 11
    Cells(i, 4).Value = WorksheetFunction.IfError(Cells(i, 3).Value, " Formula Error ")
    Next i
End Sub

Wanneer we deze macro uitvoeren, ontvangen we de volgende uitvoer:

De waarden in kolom D geven de resultaten weer van de formule in kolom C of de waarde „Formulefout“ als er een foutwaarde wordt weergegeven.

Voel je vrij om „Formulefout“ in de IfError- methode in de code te wijzigen, zodat in plaats daarvan de gewenste waarde wordt weergegeven wanneer er een fout wordt aangetroffen.

Opmerking : u kunt hier de volledige documentatie voor de VBA IfError- methode vinden.

Aanvullende bronnen

In de volgende tutorials wordt uitgelegd hoe u andere veelvoorkomende taken in VBA kunt uitvoeren:

VBA: IF OR gebruiken om meerdere voorwaarden te testen
VBA: IF AND gebruiken om meerdere voorwaarden te testen
VBA: IF NOT gebruiken om te testen of niet aan de voorwaarde is voldaan

Einen Kommentar hinzufügen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert