Sommario
In Microsoft Excel esistono diversi metodi utili per cercare corrispondenze parziali di testo e quindi estrarre dati in base a quella specifica corrispondenza. In questo articolo imparerete tutti i metodi adatti a cercare corrispondenze parziali di testo in Excel con l'incorporazione di diverse funzioni e formule di ricerca.
Scarica il quaderno di esercizi
È possibile scaricare la cartella di lavoro Excel che abbiamo utilizzato per preparare questo articolo.
Ricerca corrispondenza testo parziale.xlsx5 metodi adatti per cercare corrispondenze di testo parziali in Excel
1. Corrispondenza parziale del testo con VLOOKUP in Excel
Nell'immagine seguente è riportata una tabella contenente i voti ottenuti in diverse materie da alcuni studenti in un esame. Ora, sulla base della corrispondenza parziale di un testo da Colonna B , estrarremo i voti di una materia per uno studente.
Ad esempio, possiamo cercare il testo "Tick" nella colonna di Nome In base alla corrispondenza parziale, scopriremo il nome effettivo di quello studente e poi estrarremo i voti in matematica dello studente corrispondente dalla tabella.
In questo esempio, si utilizzerà l'opzione VLOOKUP Questa funzione cerca un valore nella colonna più a sinistra di una tabella e poi restituisce il valore nella stessa riga della colonna specificata. La formula generica di questa funzione VLOOKUP è:
=VLOOKUP(lookup_value, table_array, col_index_number, [range_lookup])
Poiché stiamo per estrarre i voti in matematica di uno studente il cui nome contiene il testo "Tick" , quindi la formula richiesta nell'output Cellula D17 sarà:
=VLOOKUP(D16,B5:G14,5,FALSE)
Oppure,
=VLOOKUP("*Tick*",B5:G14,5,FALSE)
Dopo aver premuto Entrare , vi verranno mostrati subito i voti in matematica per Tickner.
Per saperne di più: Come usare VLOOKUP per le corrispondenze parziali in Excel (4 modi)
2. Ricerca di corrispondenze di testo parziali con le funzioni INDEX-MATCH
Ora utilizzeremo la combinazione di INDICE e PARTITA La funzione INDEX restituisce un valore o un riferimento della cella all'intersezione di una particolare riga e colonna in un determinato intervallo e la funzione MATCH restituisce la posizione relativa di un elemento in una matrice che corrisponde a un valore specificato in un ordine specifico.
Troveremo un risultato simile a quello ottenuto con il metodo precedente. Quindi, in questa sezione, la formula richiesta nell'output Cellula D18 sarà:
=INDICE(B5:G14,MATCH(D17,B5:B14,0),MATCH(D17,B4:G4,0))
Oppure,
=INDEX(B5:G14,MATCH("*Tick*",B5:B14,0),MATCH(D17,B4:G4,0))
Ora premere Entrare e la formula restituirà 91, il voto ottenuto da Tickner in matematica.
In questa formula, i due PARTITA definiscono i numeri di riga e di colonna rispettivamente del nome dello studente e della materia. INDICE restituisce il valore all'intersezione dei numeri di riga e di colonna definiti nell'array.
Per saperne di più: Come usare INDEX e Match per le corrispondenze parziali (2 modi)
3. XLOOKUP con carattere jolly per cercare una corrispondenza di testo parziale
Il XLOOKUP cerca una corrispondenza in un intervallo o in un array e restituisce l'elemento corrispondente da un secondo intervallo o array. La formula generica di questa funzione è:
=XLOOKUP(lookup_value, lookup_array, return_array, [if_not_found], [match_mode], [search_mode])
Ora useremo questo XLOOKUP per estrarre direttamente i voti in matematica dello studente il cui nome contiene il testo "Tick" all'interno.
Nell'uscita Cellula D18 , la formula richiesta sarà:
=XLOOKUP("*"&D16&"*",B5:B14,F5:F14,,2)
Dopo aver premuto Entrare , verrà visualizzato un risultato simile a quello trovato nei due esempi precedenti.
In questa funzione, abbiamo usato 2 come argomento [match_mode] che indica la corrispondenza con i caratteri jolly. Se non si usa questo argomento, la funzione restituirà #N/A perché, per impostazione predefinita, la funzione cercherà la corrispondenza esatta invece di quella con i caratteri jolly.
4. Combinazione delle funzioni XLOOKUP, ISNUMBER e SEARCH per cercare corrispondenze di testo parziali
Se si sceglie di evitare l'uso di caratteri jolly nella funzione di ricerca, è necessario applicare la formula combinata di XLOOKUP, ISNUMERO e RICERCA funzioni.
Il ISNUMERO verifica se il valore di una cella è un valore numerico o meno. La funzione RICERCA restituisce il numero del carattere in corrispondenza del quale viene trovato per primo un carattere specifico o una stringa di testo, leggendo da sinistra a destra. Le formule generiche di queste due funzioni sono le seguenti:
=ISNUMERO(valore)
E
=SEARCH(trova_testo, entro_testo, [numero_di_ricerca])
Quindi, la formula richiesta nell'output Cellula D18 sarà:
=XLOOKUP(TRUE,ISNUMBER(SEARCH(D16,B5:B14)),F5:F14)
Dopo aver premuto Entrare , il valore risultante verrà mostrato subito.
🔎 Come funziona la formula?
- Il RICERCA cerca il testo 'Tick' nell'intervallo della cella B5:B14 e restituisce un array di:
{#VALUE!;#VALUE!;1;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!}
- Il ISNUMERO cerca quindi il valore numerico in quell'array e restituisce un altro array di valori booleani:
{FALSE;FALSE;TRUE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE}.
- Il XLOOKUP cerca il valore booleano specificato. VERO nell'array trovato nel passaggio precedente ed estrae il numero di riga di quel valore nell'array di B5:B14 .
- Infine, in base all'array di ritorno di F5:F14 , il XLOOKUP La funzione estrae i voti in matematica dell'alunno il cui nome contiene il testo-. 'Tick' all'interno.
5. Uso delle funzioni FILTRO, ISNUMERO e RICERCA per cercare corrispondenze di testo parziali
Nell'ultimo metodo, si utilizzerà la combinazione di FILTRO, NUMERO e RICERCA funzioni. Il FILTRO La funzione filtra un intervallo di celle o una matrice in base alle condizioni date. La formula generica di questa funzione è:
=FILTRO(array, include, [if_empty])
Dal momento che abbiamo a che fare con un set di dati simile, la formula richiesta con l'attributo FILTRO nell'uscita Cellula D18 sarà:
=FILTRO(F5:F14,ISNUMBER(SEARCH(D16,B5:B14))
Ora premere Entrare e si otterrà immediatamente il valore risultante.
In questa formula, il FILTRO filtra l'intervallo di celle. F5:F14 in base al valore booleano VERO Solo la combinazione di ISNUMERO e RICERCA restituisce un array di valori booleani. VERO e FALSO e definisce il secondo argomento (includere) del FILTRO funzione.
Parole conclusive
Spero che tutti i metodi sopra descritti vi aiutino a estrarre i dati in base alle corrispondenze parziali del testo nei vostri fogli di calcolo Excel. Se avete domande o commenti, fatemelo sapere nella sezione dei commenti. Oppure potete consultare gli altri articoli relativi alle funzioni di Excel su questo sito.