Sommario
In Excel, le circostanze possono richiedere di verificare se una cella contiene un testo specifico Oggi vi mostreremo come verificare se una cella contiene un testo specifico. Per questa sessione utilizzeremo Excel 2019, ma potete utilizzare la versione che preferite.
Prima di tutto, conosciamo il set di dati che è alla base dei nostri esempi
.
Abbiamo una tabella che contiene le informazioni di diversi studenti con i loro voti. Utilizzando questo set di dati, verificheremo se una cella contiene o meno un testo specifico.
Si noti che questo è un set di dati di base per mantenere le cose semplici. In uno scenario reale, si potrebbe incontrare un set di dati molto più grande e complesso.
Libro di lavoro pratico
Potete scaricare il libro di esercizi dal link sottostante.
Excel Se la cella contiene un testo specifico.xlsxSe la cella contiene un testo specifico
1. La cella contiene solo testo specifico
Possiamo esaminare una cella che può contenere (o meno) esattamente solo il testo (stringa) che stiamo cercando. Non ci saranno stringhe aggiuntive.
Ad esempio, nel nostro set di dati, il Grado la colonna ha Passato o Fallito in ogni cella. Non ci sono parole o stringhe extra. Quindi, possiamo verificare se una cella di questa colonna contiene Passato o Fallito .
Qui, ad esempio, controlleremo se una cella contiene o meno la dicitura "Passato" e poi aggiungeremo un'annotazione al punto appena introdotto Osservazioni colonna.
Sentendo parole come "check", una delle prime funzioni che vengono in mente è SE . il SE esegue un test logico e restituisce un valore binario (VERO o FALSO).
Scriviamo la formula utilizzando SE per verificare se la cella contiene il testo specifico "Passato" o meno.
=IF(D4="Passed","Promoted","")
Qui abbiamo impostato un'operazione logica D4="Superato"
che confronta se l'elemento D4 contiene "Passato" o meno.
Per se_vero_valore abbiamo impostato "Promosso", apparirà come risultato una volta individuata la cella contenente il testo. Per il momento, non è previsto alcun valore_falso viene fornito.
Il D4 La cella ha il testo di ricerca "Passato", quindi la formula ha restituito il valore se_vero_valore .
Ora, scrivete la formula per il resto delle celle. Potete esercitarvi con il comando AuoFill anche questa funzione.
Si può notare che la nostra formula ha restituito il valore se_vero_valore , "Promosso", perfettamente per le celle che contengono "Superato".
Se una qualsiasi delle celle contiene "passed" invece di "Passed", funzionerà ugualmente.
Per saperne di più: Ricerca di testo nell'intervallo in Excel
2. La cella contiene un testo specifico (corrispondenza parziale)
A volte può essere necessario cercare un testo specifico all'interno di una cella come sottostringa. In questa sezione vedremo come farlo.
Ad esempio, si cercherà una stringa (nome del gruppo) all'interno delle celle del file ID colonna.
Abbiamo introdotto un paio di colonne che si adattano al contesto del nostro esempio.
Si può vedere per il Stringa di ricerca Seguire questo articolo sull'unione delle righe per le tecniche.
I. Corrispondenza tramite la funzione FIND (sensibile alle maiuscole e alle minuscole)
Nella sezione precedente abbiamo utilizzato SE per controllare il testo (utilizzando l'espressione logica). Questa funzione sarà utilizzata anche se abbiamo bisogno di altre funzioni di supporto.
Il TROVARE è una funzione che verrà abbinata alla funzione SE per verificare se una cella contiene il testo specifico almeno come sottostringa.
Ad esempio, abbiamo scelto la stringa "AB" che cercheremo all'interno delle celle del file ID colonna.
Ora, scriviamo la formula per il B4 cellulare.
=IF(ISNUMBER(FIND($E$4,B4)), "Trovato", "Non trovato")
Qui si può vedere la funzione ISNUMERO . ISNUMERO ritorni VERO quando una cella contiene un numero e FALSO se non
Abbiamo usato questa funzione perché controlla se l'elemento TROVARE Il risultato della funzione è un numero o meno, ma restituisce un valore booleano.
Quando il ISNUMERO ritorni VERO allora il SE attiverà la funzione if_true_value (trovato) , altrimenti il if_false_value (Non trovato) .
Qui per la prima cella, il TROVA NUMERO restituito VERO e l'output finale è diventato "Trovato".
Estraiamo il nome del gruppo. Per farlo, utilizzeremo il metodo MID Questa funzione estrae i caratteri dal centro di una stringa data.
=IF(ISNUMBER(FIND($E$4,B4)),MID(B4,FIND($E$4,B4),2),")
Per prima cosa, abbiamo controllato se la cella contiene il testo specifico, poi al punto se_vero_valore abbiamo impostato il campo MID per recuperare il valore. TROVARE all'interno MID fornisce il punto di partenza e poi 2 caratteri. In questo modo si otterranno i nomi dei gruppi con due caratteri.
Abbiamo trovato il nome del gruppo quando la cella contiene il testo.
Da quando TROVARE è sensibile alle maiuscole e alle minuscole, non verrà eseguito se_vero_valore per "ab".
Scrivete il codice per il resto delle celle. Troverete il nome di un gruppo scritto esattamente come il Stringa di ricerca .
Cambiare il Stringa di ricerca si troverà il risultato aggiornato.
II. Corrispondenza tramite la funzione SEARCH (senza distinzione tra maiuscole e minuscole)
Nella sezione precedente, abbiamo osservato un approccio sensibile alle maiuscole e alle minuscole. Per mantenere le cose flessibili, possiamo adottare un approccio non sensibile alle maiuscole e alle minuscole. Per questo, il parametro RICERCA sarà utile.
RICERCA restituisce la posizione di una stringa di testo all'interno di un'altra. Il funzionamento è simile a quello del metodo TROVARE ma non fa distinzione tra maiuscole e minuscole.
La formula è la seguente
=IF(ISNUMBER(SEARCH($E$4,B4)),MID(B4,SEARCH($E$4,B4),2),")
Sembra simile a quello del TROVARE L'unico cambiamento è che abbiamo sostituito TROVARE con RICERCA Il resto della formula è identico e funziona esattamente allo stesso modo.
Abbiamo trovato il nome del gruppo quando la cella contiene il testo.
Scrivete la formula per il resto delle celle. Troverete tutti i nomi dei gruppi che hanno "AB" in qualsiasi forma.
Se scriviamo "ab" come il Stringa di ricerca recupera comunque questi valori.
III. Corrispondenza con la funzione COUNTIF (senza distinzione tra maiuscole e minuscole)
Un altro modo per verificare che la cella contenga un testo specifico come sottostringa è la combinazione di SE e COUNTIF Anche questo approccio non tiene conto delle maiuscole e delle minuscole.
Questo COUNTIF conta le celle di un intervallo che soddisfano una singola condizione.
Ora la formula sarà la seguente.
=IF(COUNTIF(B4, "*"&$E$4& "*"),MID(B4,SEARCH($E$4,B4),2),")
Abbiamo verificato la logica utilizzando COUNTIF . utilizzando COUNTIF controlla se il valore del conteggio è 1 o meno.
Se COUNTIF restituisce 1, allora il valore if_true_value ( MID per estrarre il nome del gruppo) verrà restituito. Il parametro MID La porzione di questo strumento è stata discussa nella sezione precedente.
Per 0 dal COUNTIF la formula restituirà if_false_value (cella vuota, per il momento).
Abbiamo trovato la corrispondenza e la formula ha restituito il nome del gruppo quando la cella contiene il testo specifico.
Scrivete la formula per il resto delle celle. Troverete tutti i nomi dei gruppi che hanno il simbolo Stringa di ricerca in qualsiasi forma.
Cambiamo il Stringa di ricerca valore, i risultati aggiornati saranno sotto i nostri occhi.
Per saperne di più COUNTIF Se siete interessati alla corrispondenza parziale con if, questo articolo sulla corrispondenza parziale IF può esservi utile.
Conclusione
Per oggi è tutto. Abbiamo elencato diversi approcci per verificare se una cella contiene un testo specifico in Excel. Speriamo che vi sia utile. Sentitevi liberi di commentare se qualcosa vi sembra difficile da capire. Fateci sapere altri metodi che potrebbero esserci sfuggiti.