Come utilizzare iferror in vba (con esempi)


È possibile utilizzare la seguente sintassi di base per utilizzare la funzione SEERRORE in VBA per visualizzare un valore specifico in una cella se viene riscontrato un errore in una formula di Excel:

 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

Questo particolare esempio controlla se ciascuna cella nelle righe da 2 a 11 della terza colonna del foglio corrente presenta un valore di errore.

Se viene rilevato un valore di errore, viene assegnato un valore “Errore formula” alla cella corrispondente nella quarta colonna, altrimenti il valore numerico nella terza colonna viene assegnato al valore corrispondente nella quarta colonna.

L’esempio seguente mostra come utilizzare questa sintassi nella pratica.

Esempio: come utilizzare IFERROR in VBA

Supponiamo di avere il seguente set di dati in Excel che mostra le entrate totali e le unità vendute di un prodotto in diversi negozi:

La colonna C utilizza una formula per dividere le entrate per le unità vendute per ottenere le entrate per unità.

Si noti tuttavia che la formula produce un valore di #DIV/0! in alcune celle in cui proviamo a dividere per zero.

Diciamo che vogliamo creare una nuova colonna che visualizzi invece “Errore formula” per queste celle.

Per fare ciò possiamo creare la seguente macro:

 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

Quando eseguiamo questa macro, riceviamo il seguente output:

I valori nella colonna D visualizzano i risultati della formula nella colonna C o il valore “Errore formula” se viene visualizzato un valore di errore.

Sentiti libero di modificare “Errore formula” nel metodo IfError nel codice per visualizzare invece il valore desiderato quando si verifica un errore.

Nota : qui è possibile trovare la documentazione completa per il metodo VBA IfError .

Risorse addizionali

I seguenti tutorial spiegano come eseguire altre attività comuni in VBA:

VBA: come utilizzare IF OR per testare più condizioni
VBA: come utilizzare IF AND per testare più condizioni
VBA: come utilizzare IF NOT per verificare se la condizione non è soddisfatta

Aggiungi un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *