#N/D (in inglese #N/A; la tabella mostra i nomi inglesi degli errori) significa "non disponibile": una ricerca come CERCA.VERT, CERCA.X o CONFRONTA non ha trovato il valore cercato. Qui sotto =CERCA.VERT(E2;A2:B6;2;FALSO) restituisce #N/D perché Kiwi non è nell'elenco. Cambia E2 in Pear e restituisce 1.5. Cerca vert in Excel inglese si chiama VLOOKUP, ed è così che lo mostra la tabella: =VLOOKUP(E2,A2:B6,2,FALSE). Puoi scrivere le formule anche in italiano, con il punto e virgola.
| A | B | C | D | E | F | |
|---|---|---|---|---|---|---|
| 1 | Product | Price | Look for | Price | ||
| 2 | Apple | 1.2 | Kiwi | #N/A | ||
| 3 | Pear | 1.5 | ||||
| 4 | Plum | 0.8 | ||||
| 5 | Bread | 2.4 | ||||
| 6 | Milk | 1.1 |
#N/A Il valore cercato non è nell’intervallo di ricerca.In Excel in italiano: =CERCA.VERT(E2;A2:B6;2;FALSO)Quando il valore manca davvero, #N/D è la risposta giusta, e SE.NON.DISP. (più avanti) lo trasforma in un messaggio. I casi da correggere sono quelli in cui il valore c'è e la ricerca fallisce lo stesso. Excel in altre lingue mostra l'errore con un nome suo, come #NV in tedesco, #Н/Д in russo e #YOK in turco; è sempre lo stesso errore.
#N/D dopo aver copiato una ricerca verso il basso
La causa più comune nei fogli reali: la formula funziona nella prima riga, e alcune righe sotto mostrano #N/D anche se i prodotti sono nell'elenco.
| A | B | C | D | E | F | |
|---|---|---|---|---|---|---|
| 1 | Product | Price | Order | Price | ||
| 2 | Apple | 1.2 | Apple | 1.2 | ||
| 3 | Pear | 1.5 | Plum | 0.8 | ||
| 4 | Plum | 0.8 | Pear | #N/A | ||
| 5 | Bread | 2.4 | Milk | 1.1 | ||
| 6 | Milk | 1.1 | Apple | #N/A |
#N/A Il valore cercato non è nell’intervallo di ricerca.In Excel in italiano: =CERCA.VERT(E4;A4:B8;2;FALSO)Fai clic su F4: il suo intervallo di tabella è A4:B8, due righe più in basso di quello di F2. Copiare la formula verso il basso ha spostato l'intervallo con lei, quindi Pear (riga 3) e Apple (riga 2) ne sono usciti. F3 e F5 funzionano solo perché Plum e Milk sono ancora dentro i loro intervalli. Fai clic su F2 e cambia l'intervallo in $A$2:$B$6: tutta la colonna segue e compaiono tutti i prezzi. I segni $ bloccano l'intervallo, vedi i riferimenti assoluti.
#N/D a causa di spazi in più
"Pear " con uno spazio finale e "Pear" sono valori diversi per Excel. Gli spazi arrivano da dati scritti a mano, copiati da pagine web o esportati da altri sistemi, e nella cella sono invisibili.
| A | B | C | D | E | F | |
|---|---|---|---|---|---|---|
| 1 | Product | Price | Look for | Price | Length of A2 | |
| 2 | Pear | 1.5 | Pear | #N/A | 5 | |
| 3 | Apple | 1.2 | ||||
| 4 | Plum | 0.8 |
#N/A Il valore cercato non è nell’intervallo di ricerca.In Excel in italiano: =CERCA.VERT(D2;A2:B4;2;FALSO)E2 restituisce #N/D. F2 mostra la causa: Pear ha 4 lettere, ma A2 è lunga 5 caratteri. Elimina lo spazio in A2 e la ricerca funziona. Tre modi per risolverlo una volta per tutte:
- Ripulisci la colonna: metti
=ANNULLA.SPAZI(A2)in una colonna di appoggio, copiala verso il basso, poi copiala e usa Home > Incolla > Valori sopra l'originale. - Ripulisci il valore cercato quando gli spazi sono in ciò che scrivi:
=CERCA.VERT(ANNULLA.SPAZI(D2);A2:B4;2;FALSO). - Ripulisci l'intera colonna di ricerca dentro la formula (Excel 2021 o Microsoft 365):
=CERCA.X(D2;ANNULLA.SPAZI(A2:A4);B2:B4).
Il testo incollato dalle pagine web può contenere uno spazio unificatore, che ANNULLA.SPAZI non elimina. La pagina su ANNULLA.SPAZI mostra come sostituirlo con SOSTITUISCI(A2;CODICE.CARATT(160);" ").
#N/D quando il valore non è nella prima colonna
CERCA.VERT cerca solo nella prima colonna del suo intervallo e restituisce una colonna alla sua destra. Cercare un valore di qualsiasi altra colonna restituisce #N/D, anche quando è nella tabella.
| A | B | C | D | E | F | G | |
|---|---|---|---|---|---|---|---|
| 1 | Product | Code | Price | Code | VLOOKUP | XLOOKUP | |
| 2 | Apple | A-17 | 1.2 | P-22 | #N/A | Pear | |
| 3 | Pear | P-22 | 1.5 | ||||
| 4 | Plum | P-31 | 0.8 | ||||
| 5 | Bread | B-05 | 2.4 | ||||
| 6 | Milk | M-40 | 1.1 |
#N/A Il valore cercato non è nell’intervallo di ricerca.In Excel in italiano: =CERCA.VERT(E2;A2:C6;1;FALSO)I codici sono nella colonna B, quindi CERCA.VERT su A2:C6 cerca P-22 tra i nomi dei prodotti e non lo trova. Non può nemmeno restituire il nome del prodotto, che sta prima del codice. CERCA.X prende separatamente la colonna di ricerca e la colonna da restituire e trova Pear. In Excel 2019 e precedenti, =INDICE(A2:A6;CONFRONTA(E2;B2:B6;0)) fa lo stesso.
#N/D per i numeri memorizzati come testo
Un numero d'ordine scritto come testo ('1001, o importato da un CSV) non corrisponde mai al numero 1001, e viceversa. Entrambe le celle mostrano 1001, quindi questo caso è difficile da vedere. In Excel:
A2:B6 holds order numbers stored as text, E2 holds the number 1001
=VLOOKUP(E2,A2:B6,2,FALSE) #N/A
=VLOOKUP(E2&"",A2:B6,2,FALSE) found: E2&"" turns the number into text
A2:B6 holds real numbers, E2 holds "1001" as text
=VLOOKUP(E2,A2:B6,2,FALSE) #N/A
=VLOOKUP(--E2,A2:B6,2,FALSE) found: -- turns the text into a number
In Excel italiano le due correzioni sono =CERCA.VERT(E2&"";A2:B6;2;FALSO) e =CERCA.VERT(--E2;A2:B6;2;FALSO). =VAL.TESTO(A2) ti dice quale dei due lati è testo, e un piccolo triangolo verde nell'angolo di una cella segnala un numero memorizzato come testo. Per convertire un'intera colonna, vedi da testo a numero.
SE.NON.DISP. o SE.ERRORE: mostrare un messaggio quando non si trova nulla
Quando un valore può mancare legittimamente, mostra qualcosa di più utile di #N/D. Usa SE.NON.DISP. (in inglese IFNA), non SE.ERRORE:
| A | B | C | D | E | F | G | |
|---|---|---|---|---|---|---|---|
| 1 | Product | Price | Look for | IFNA | IFERROR | ||
| 2 | Apple | 1.2 | Pear | #REF! | Not found | ||
| 3 | Pear | 1.5 | |||||
| 4 | Plum | 0.8 | |||||
| 5 | Bread | 2.4 | |||||
| 6 | Milk | 1.1 |
#REF! La formula fa riferimento a una cella che non esiste.In Excel in italiano: =SE.NON.DISP.(CERCA.VERT(E2;A2:B6;3;FALSO);"Not found")Entrambe le formule chiedono la colonna 3 di un intervallo di due colonne, un errore. SE.NON.DISP. lascia passare il #RIF!, quindi vedi il problema. SE.ERRORE lo nasconde e dice "Not found" per Pear, che è nell'elenco. Cambia entrambi i 3 in 2: ora ciascuna mostra 1.5, e con E2 impostata su Kiwi ciascuna mostra "Not found". CERCA.X ha il messaggio incorporato: =CERCA.X(E2;A2:A6;B2:B6;"Not found"). Altro sulla differenza in SE.ERRORE.
Correggere una ricerca rotta dagli spazi
| A | B | C | D | E | F | |
|---|---|---|---|---|---|---|
| 1 | Product | Price | Look for | Price | ||
| 2 | Apple | 1.2 | Plum | |||
| 3 | Pear | 1.5 | ||||
| 4 | Plum | 0.8 | ||||
| 5 | Bread | 2.4 | ||||
| 6 | Milk | 1.1 |
Tocca a te: Ogni prodotto dell'elenco è stato importato con uno spazio alla fine, quindi =VLOOKUP(E2,A2:B6,2,FALSE) restituisce #N/A. Scrivi in F2 una formula che restituisca comunque il prezzo del prodotto in E2.
=CERCA.X(E2;ANNULLA.SPAZI(A2:A6);B2:B6) ripulisce l'elenco dentro la formula. Qui funziona anche =CERCA.VERT(E2&" ";A2:B6;2;FALSO), ma solo finché ogni prodotto ha esattamente uno spazio finale; ripulire la colonna con ANNULLA.SPAZI è la correzione che dura.
Domande frequenti
Cosa significa #N/D in Excel?
N/D sta per "non disponibile". Significa che una funzione di ricerca (CERCA.VERT, CERCA.ORIZZ, CERCA.X, CONFRONTA, CONFRONTA.X) non ha trovato il valore che le è stato dato. Anche =NON.DISP() lo restituisce di proposito, per esempio perché un grafico salti un punto invece di disegnarlo come 0.
Perché CERCA.VERT restituisce #N/D quando il valore esiste?
I due valori non sono esattamente uguali. Motivi comuni: uno spazio finale in uno dei due, un numero memorizzato come testo da una parte e come numero dall'altra, oppure un intervallo di tabella senza $ che è scivolato verso il basso copiando la formula, così la riga con il valore non è più al suo interno.
Perché CERCA.VERT restituisce #N/D per alcune righe e non per altre?
L'intervallo della tabella non è stato bloccato prima di copiare la formula verso il basso, quindi in ogni riga parte una riga più in basso: A2:B6 nella prima riga diventa A4:B8 due righe dopo, e i valori sopra l'intervallo non vengono più trovati. Bloccalo con $: =CERCA.VERT(E2;$A$2:$B$6;2;FALSO).
Perché CERCA.X restituisce #N/D?
Il valore non è nella matrice di ricerca, oppure ne differisce per uno spazio o perché è testo invece di un numero. CERCA.X cerca una corrispondenza esatta per impostazione predefinita, quindi non accetta nulla di simile. Il suo quarto argomento sostituisce l'errore: =CERCA.X(E2;A2:A6;B2:B6;"Not found").
Perché CONFRONTA restituisce #N/D?
Con il tipo di corrispondenza 0 il valore non è nell'intervallo, esattamente come con CERCA.VERT. Con il tipo 1 o omesso, l'intervallo deve essere in ordine crescente e il valore non deve essere più piccolo del primo elemento; usa =CONFRONTA(E2;A2:A6;0) per una corrispondenza esatta.