Formule Excel

IFERROR + XLOOKUP: creazione di formule Excel a prova di errore

Quando utilizzare l'argomento if_not_found di IFERROR, IFNA e XLOOKUP e quando nascondere gli errori è esattamente la mossa sbagliata. Modelli pratici per formule che falliscono clamorosamente solo quando dovrebbero.

#N/A sparsi in un report sembrano rotti, quindi il riflesso è quello di racchiudere tutto in IFERROR e andare avanti. A volte è giusto. Spesso seppellisce un problema reale (una ricerca interrotta, una divisione per zero, un errore di battitura in una chiave) sotto una cella vuota e ordinata.

Questa guida illustra i tre strumenti per la gestione degli errori di formula, la differenza tra loro e i modelli che nascondono gli errori previsto lasciando che quelli inaspettato rimangano visibili.

Risposta rapida

Utilizzare Argomento if_not_found di XLOOKUP o SENA quando è prevista una corrispondenza mancante. Utilizzare IFERROR solo quando ogni possibile errore dell'espressione racchiusa deve condividere lo stesso fallback. Per denominatori zero e altre condizioni note, testare la condizione direttamente con IF; documenta il motivo e lascia visibili gli errori non correlati.

Situazione Modello consigliato Perché
La ricerca potrebbe non avere corrispondenze XLOOKUP(...,"Not found") Gestisce solo i mancati attesi
VLOOKUP/INDEX-MATCH potrebbe mancare IFNA(formula,"Not found") Mantiene visibili #REF! e #VALUE!
Il denominatore può essere zero IF(B2=0,"",A2/B2) Verifica la condizione reale
Qualsiasi fallimento significa veramente la stessa cosa IFERROR(formula,fallback) Cattura ampia e adeguata

I tre strumenti

IFERROR rileva il tipo di errore ogni:

=IFERROR(A2/B2, 0)

Se la divisione produce #DIV/0!, #VALUE!, #REF! - qualsiasi cosa - ottieni 0. Questa ampiezza è anche il suo pericolo: uno #REF! da una colonna cancellata merita attenzione, non uno 0 silenzioso.

SENA cattura solo #N/A:

=IFNA(VLOOKUP(A2, Prices!A:B, 2, FALSE), "not listed")

Questo è quasi sempre ciò che desideri nelle ricerche: "valore non trovato" è una condizione prevista, mentre #VALUE! o #REF! dalla stessa formula segnala comunque un vero bug.

if_not_found integrato rende la parte di fallback della ricerca stessa:

=XLOOKUP(A2, Prices!A:A, Prices!B:B, "not listed")

Più pulito del confezionamento e gestisce solo i casi non trovati: emergono ancora altri errori.

Regola pratica: gestire le aspettative, esporre gli imprevisti

Fai una domanda per formula: quale errore è normale in questo caso?

  • Una ricerca che può legittimamente mancare → gestisce #N/A (IFNA o fallback di XLOOKUP).
  • Un rapporto il cui denominatore può legittimamente essere zero → testare esplicitamente il denominatore:
=IF(B2=0, "", A2/B2)

Testare la condizione è meglio che individuare l'errore: IF(B2=0,…) documenta perché il fallback esiste, mentre IFERROR attorno alla stessa divisione inghiottirebbe anche uno #VALUE! causato dal testo nella colonna B.

  • Tutto il resto → lascia che sia errore. Un #REF! visibile ti costa un minuto; uno invisibile ti costa un rapporto sbagliato.

Gli errori classici

Copre IFERROR su un'intera colonna. Si spedisce un report con 40 zeri, tre dei quali sono zeri reali e 37 dei quali sono un foglio rinominato che nessuno ha notato.

IFERROR(..., "") matematica di alimentazione. Una stringa vuota in una colonna numerica si trasforma a valle in SUM leggermente sbagliato e produce #VALUE! in aritmetica: l'errore che hai nascosto ritorna due colonne dopo, più lontano dalla sua causa.

Rilevamento di errori che indicano dati sporchi. Se VALUE(A2) presenta errori perché la colonna mescola testo e numeri, la correzione è pulizia della colonna e non rileva il sintomo.

Controllo di un foglio pieno di errori nascosti

Ereditare una cartella di lavoro in cui ogni formula è racchiusa in IFERROR? Due mosse:

  1. Conta ciò che viene catturato. In una colonna helper, ripetere la formula interna senza wrapper e contare gli errori con =SUM(--ISERROR(...)) immesso nell'intervallo.
  2. Chiedi a un assistente di verificarlo. AI per Excel può scansionare le formule di un foglio, elencare quali celle stanno attualmente eliminando gli errori e di che tipo è ogni errore e distinguere "ricerca mancata, gestita correttamente" da "riferimento interrotto, nascosto silenziosamente" - quindi correggi quelli che approvi, con un backup automatico prima di qualsiasi modifica.

Questo tipo di controllo della formula è noioso a mano e veloce per uno strumento che legge la cartella di lavoro a livello di codice. Se preferisci descrivere l'obiettivo in una frase piuttosto che creare colonne di supporto, prova gratuitamente il componente aggiuntivo - e per il percorso in inglese semplice per scrivere queste formule in primo luogo, vedi Generazione di formule AI.

Modelli di formule più affidabili

Restituisce uno stato invece di restituire silenziosamente zero:

=IF(B2=0, "CHECK DENOMINATOR", A2/B2)

Mantieni una ricerca mancata distinta da un risultato vuoto:

=XLOOKUP(A2, Prices!A:A, Prices!B:B, NA())

Convalida la chiave prima di cercarla:

=IF(TRIM(A2)="", "MISSING KEY", XLOOKUP(TRIM(A2), Prices!A:A, Prices!B:B, "NOT LISTED"))

Questi stati visibili sono più facili da contare, filtrare e analizzare rispetto alle stringhe vuote. Se è necessaria una presentazione pulita, mantieni la formula diagnostica in una colonna di supporto e presenta un risultato separato rivolto all'utente.

Riferimenti ufficiali

Domande frequenti

Qual è la differenza tra IFERROR e IFNA?

IFERROR rileva ogni tipo di errore; IFNA rileva solo #N/A (l'errore "non trovato"). Per quanto riguarda le ricerche, preferisci l'argomento if_not_found di IFNA o XLOOKUP in modo che errori strutturali come #REF! rimanere visibile.

Dovrei usare IFERROR ovunque?

No. Gestisci solo gli errori previsti (di solito ricerche mancate e denominatori zero) e lascia che vengano visualizzati gli errori imprevisti. Un errore visibile è un'informazione diagnostica; uno nascosto è una futura segnalazione errata.

Come posso trovare tutte le celle con errori in Excel?

Premere F5 → Speciale → Formule → controlla solo Errori. Excel seleziona ogni cella di errore nel foglio. Un assistente AI può andare oltre e classificarli in base al tipo di errore e alla causa.