Le funzioni FIND and SEARCH in Excel
TROVA (Inglese: FIND) restituisce la posizione di un carattere o di una parola dentro un testo: la @ in un indirizzo e-mail si trova alla posizione 12. Da sola raramente serve; è l’aiutante che dice a SINISTRA (Inglese: LEFT) e STRINGA.ESTRAI (Inglese: MID) dove tagliare.
RICERCA (Inglese: SEARCH) fa lo stesso ma ignora maiuscole e minuscole e accetta i caratteri jolly. Se non trova nulla, entrambe restituiscono #VALORE!.
Sintassi
=FIND(find_text, within_text, [start_num])
| Argomento | Cosa significa |
|---|---|
| find_text | Cosa cercare, per esempio «@» o «spazio». |
| within_text | Il testo o la cella in cui cercare. |
| start_numfacoltativo | Da dove iniziare la ricerca. Predefinito 1. Usalo per trovare la seconda occorrenza. |
Esempi
1. Posizione di un carattere
| A | B | C | D | |
|---|---|---|---|---|
| 1 | SKU | Posizione di @ | ||
| 2 | SH-4417-BLU | omar.haddad@shopmail.com | 12 |
«omar.haddad» è lungo 11 caratteri, quindi la @ è la dodicesima.
2. La seconda occorrenza
| A | B | C | D | |
|---|---|---|---|---|
| 1 | SKU | 2° trattino | ||
| 2 | SH-4417-BLU | omar.haddad@shopmail.com | 8 |
Il primo trattino è in posizione 3, quindi si inizia a cercare dalla 4: il successivo è in posizione 8.
3. Ignorare le maiuscole: SEARCH
| A | B | C | D | |
|---|---|---|---|---|
| 1 | SKU | "MAIL" alla posizione | ||
| 2 | SH-4417-BLU | omar.haddad@shopmail.com | 17 |
RICERCA (Inglese: SEARCH) trova «mail» in shopmail.com anche se le maiuscole non coincidono. =TROVA("MAIL";B2) restituirebbe #VALORE!.
Errori comuni
Errore #VALORE!. Il testo non è stato trovato, spesso per una differenza di maiuscole con TROVA (Inglese: FIND).
Correzione: Usa RICERCA (Inglese: SEARCH) per ignorare le maiuscole, oppure
=SE.ERRORE(TROVA("@";B2);0)quando il carattere potrebbe mancare.Un carattere in più o in meno quando si taglia.
=SINISTRA(A2;TROVA(" ";A2))include anche lo spazio.Correzione: Sottrai 1 per SINISTRA (Inglese: LEFT), aggiungi 1 per STRINGA.ESTRAI (Inglese: MID).
Domande frequenti
Come controllo se una cella contiene una parola?
=VAL.NUMERO(RICERCA("mail";B2)) restituisce TRUE quando la parola compare in qualsiasi punto, con qualsiasi maiuscola.
Funzioni correlate
- LEFTLEFT restituisce i primi caratteri di un testo, RIGHT gli ultimi.
- MIDMID restituisce caratteri dal centro di un testo: una posizione di partenza e una lunghezza.
- TEXTAFTERTEXTAFTER e TEXTBEFORE dividono un testo in corrispondenza di un delimitatore, come la @ in un indirizzo e-mail, senza contare le posizioni.
- SUBSTITUTESUBSTITUTE sostituisce un testo specifico in una cella con altro testo, ovunque compaia o solo in una occorrenza.