Come utilizzare ifna in vba (con esempio)


È possibile utilizzare il metodo IfNa in VBA per restituire un valore specifico se una formula genera un errore #N/D .

Ecco un modo comune di utilizzare IfNa nella pratica:

 Sub UseVLOOKUP()
    With Application
    Range(" F2 ").Value = .IfNa(.Vlookup(Range(" E2 "), Range(" A2:C11 "),3,False), "No Value Found")
End With
End Sub

Questa particolare macro tenta di utilizzare la funzione CERCA.VERT per trovare il valore nella cella E2 nell’intervallo A2:C11 .

Se il valore nella cella E2 non viene trovato, la formula restituirà #N/A .

Tuttavia, possiamo utilizzare il metodo IfNa per restituire “No Value Found” invece di #N/A .

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

Esempio: come utilizzare IfNa in VBA

Supponiamo di avere il seguente set di dati in Excel che contiene informazioni su vari giocatori di basket:

Supponiamo di voler cercare nel set di dati il nome della squadra “Kings” e restituire il valore corrispondente nella colonna degli assist.

Per fare ciò possiamo creare la seguente macro:

 Sub UseVLOOKUP()
    With Application
    Range(" F2 ").Value = .IfNa(.Vlookup(Range(" E2 "), Range(" A2:C11 "),3,False), "No Value Found")
End With
End Sub

Quando eseguiamo questa macro, riceviamo il seguente output:

La macro restituisce correttamente un valore di 3 assist per i Kings.

Supponiamo ora di modificare il nome della squadra nella cella E2 in “Grizzlies”, che non esiste nel set di dati.

Quando eseguiamo nuovamente questa macro, verrà restituito “Nessun valore trovato” perché è il valore specificato che deve essere restituito se la funzione CERCA.VERT restituisce un errore #N/D.

La macro restituisce “Nessun valore trovato” poiché i Grizzlies non esistono nella colonna squadra.

Nota : puoi trovare la documentazione completa del metodo VBA IfNa qui .

Risorse addizionali

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

VBA: come utilizzare la corrispondenza degli indici
VBA: come ordinare un foglio per più colonne
VBA: come verificare se una stringa contiene un’altra stringa

Aggiungi un commento

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