Le funzioni Excel per i testi

By | 20 Febbraio 2020

funzioni Excel di testo Excel è uno strumento con cui elaboriamo dati, di solito valori numerici ottenuti dalle nostre attività, come fatturato, costi, giacenze, eccetera. Questi sono sempre accompagnati da testi che definiscono categorie, come il nome del cliente, la linea di prodotto, la nazione, eccetera. Ci sono molte situazioni dove dobbiamo essere in grado di intervenire sui testi. Di questo parliamo in questa breve guida sulle funzioni Excel di testo.

I testi in Excel

I testi in Excel non sono i protagonisti, ruolo destinato ai numeri, ma sono fondamentali e onnipresenti sotto molte forme differenti. Quando parliamo di testi in Excel di solito ci riferiamo a:

  1. titoli e sottotitoli di pagine, di tabelle o grafici,
  2. note e istruzioni, nelle pagine o in caselle di testo disposte nelle pagine,
  3. variabili di basi dati relativi a nomi ed etichette (es: nome cliente, nome prodotto, ecc),
  4. campi di basi dati relativi a chiavi alfanumeriche (es: cod cliente, cod prodotto, ecc),
  5. variabili di basi dati relativi a note, indirizzi e similari,
  6. campi di basi dati relativi a categorie e parametri (es: come linea prodotto, nazione dei clienti, tipo offerta, eccetera).

La maggior dei testi sono importati in Excel come parte delle basi dati, mentre i testi vengono inseriti e gestiti da noi prevalentemente durante la creazione o la revisione dei fogli Excel. Raramente c’è la necessità di gestire o manipolare testi duranti l’uso ordinario di un foglio di lavoro, se non per aggiunge note nelle pagine di elaborazione, oppure per compilare un report o scrivere la mail con cui condividiamo i risultati dell’elaborazione.

Quando allora abbiamo bisogno di usare funzioni o altri strumenti per manipolare o elaborare testi?

Di solito per ragioni precise, come in presenza di basi dati inaffidabili, o testi “sporchi” da ripulire o da cui estrarre stringhe, oppure in presenza di errori di formato, o per la necessità di gestire o creare chiavi univoche, e altro ancora.

I testi come categorie

Per la maggior parte i testi sono presenti nei dati su cui lavoriamo, di solito inseriti a monte ed estratti dal gestionale o dal server. Questi testi dovrebbero essere affidabili e pronti all’uso, quindi non dovrebbero richiedere elaborazioni.

Dove invece le basi dati non sono affidabili, o sono inserite manualmente, o hanno bisogno di controlli, rimodellamento o pulizie, oppure quando presentano testi non predisposti per l’elaborazione (testi raggruppati, frammentati, formati speciali o anomali, ecc), allora è necessario manipolare e gestire questi testi.

Possiamo aver bisogno di intervenire per:

  1. pulire i testi da errori, caratteri speciali, o altre stringhe non desiderate,
  2. scomporre i testi raggruppati in elementi diversi,
  3. estrarre stringhe specifiche,
  4. creare chiavi, univoche o meno, concatenando testi o porzioni estratte,
  5. controllare la correttezza e qualità dei testi,
  6. e altro ancora.

L’elaborazione dei testi nelle basi dati avviene di solito tramite campi calcolati, cioè inserendo campi con formule che eseguono l’elaborazione o il controllo richiesto. Questi campi poi possono sostituire i campi originali in altri strumenti, come tabelle pivot.

Le funzioni Excel sono gli strumenti migliori per l’elaborazione dei testi?

Le funzioni Excel di testo sono strumenti precisi che possono manipolare le stringhe carattere per carattere, ma ci sono strumenti evoluti che permettono di fare modellazione, ristrutturazione e pulizia dei dati e quindi anche dei testi in modo più efficiente. Per esempio recupera e trasforma o l’automazione.

I testi come titoli ed etichette

Come abbiamo già detto, i testi che inseriamo durante la creazione dei fogli di lavoro sono quelli correlati agli strumenti, dalle liste dei controlli ai testi dei grafici, dalle note delle tabelle di analisi, alle istruzioni relative all’intero foglio, eccetera.

Questi testi sono di solito unici e non vengono elaborati, a meno che non siano derivati da o correlati a basi dati, oppure valori presenti in tabelle dinamiche, come parametri usati in elenchi e controlli. In questi casi allora i testi possono diventare oggetti di gestione ed elaborazione attraverso molteplici strumenti, anche funzioni specifiche usate in modo diretto o tramite altri strumenti come nomi assegnati o la convalida dei dati.

elaborare testi con le funzioni Excel

Elaborare i testi

I testi si elaborano usando gli strumenti che Excel mette a nostra disposizione, come:

  1. operatori di concatenamento,
  2. funzioni excel di testo
  3. funzioni di ricerca
  4. altre funzioni (logiche, di riferimento, informative/di controllo, ecc)
  5. query
  6. automatismi

Ogni strumento ha specifiche capacità di intervento che dobbiamo conoscere bene per poterlo utilizzare in modo efficace ed efficiente. In questa piccola guida parliamo delle funzioni Excel di testo in quanto sono strumenti precisi ed efficaci per manipolare ed elaborare stringhe di testo.

Le funzioni Excel per elaborare i testi

Quali sono le funzioni Excel di testo?

Sono una trentina di funzioni che offrono scorciatoie comode ed efficaci per agire sui testi in tutti i modi possibili, dalla rimozione di caratteri specifici (es: spazi o caratteri non stampabili), alla concatenazione di testi diversi, dalla ricerca di testi precisi alla loro estrazione, dalle conversioni al controllo, eccetera.

Come tutte le funzioni, queste devono essere inserite in celle delle pagine, integrate nella tabella dei dati o in posizioni esterne, usando gli strumenti per la scrittura delle formule, oppure possono essere inseriti in altri strumenti predisposti per ricevere e gestire formule e funzioni (es: nomi, convalida, formattazione condizionale, ecc).

In questo post non vedremo tutte le funzioni Excel di testo, ma solo le più utili:

  1. Spazi(), elimina gli spazi dal testo,
  2. Concatena(), Concat() e Testo.Unisci()
  3. Trova() e Ricerca(), rileva un valore di testo all’interno di un altro (con e senza distinzione tra maiuscole e minuscole)
  4. Sinistra() e Destra(), restituisce il carattere più a sinistra o destra di un valore di testo,
  5. Estrai(), restituisce un numero specifico di caratteri di una stringa di testo a partire dalla posizione specificata,
  6. Lunghezza(), restituisce il numero di caratteri di una stringa di testo,
  7. Ripeti(), ripete un testo per il numero di volte specificato,
  8. Rimpiazza(), sostituisce i caratteri all’interno di un testo,
  9. Sostituisci(), sostituisce il nuovo testo al testo contenuto in una stringa,
  10. Testo(), formatta un valore in un diverso formato e può convertirlo in testo.

Oltre a queste funzioni ce ne sono molte altre, più specifiche, tra cui per esempio possiamo citare alcune delle funzioni di conversione: Minusc(), converte in minuscolo il testo, Maiusc() converte in maiuscolo il testo e Maiusc.Iniz() converte in maiuscolo la prima lettera di ogni parola di un valore di testo.

Come possiamo citare alcune delle funzioni di controllo relative ai testi: Identico(), verifica se due valori di testo sono uguali; T(), restituisce il valore se è un testo; Val.testo(), restituisce vero se il valore controllato è un testo.

funzioni excel di ricerca

Unire testi con le funzioni Excel di testo

Talvolta possiamo aver bisogno di unire testi diversi, per esempio per creare nuove categorie, o chiavi secondarie per collegare tabelle diverse. Per unire due testi in due celle diverse possiamo usare:

  1. l’operatore classico di concatenamento, cioè “&”,
  2. oppure le funzioni di concatenamento.

L’operatore di concatenamento è il modo classico per unire testi di celle diverse, per esempio la formula =A2& B2 restituirà un testo unico dai testi contenuti nelle celle indicate. Per esempio se A2 contiene “EmiliaRomagna” e B2 contiene “Bologna”, il risultato sarà “EmiliaRomagnaBologna”. È importante sottolineare che se le celle contengono numeri questi verranno tratti come testo e il risultato sarà un testo.

L’alternativa all’operatore sono funzioni come Concatena(), Concat() e Testo.Unisci(). La prima è la funzione classica ancora presente, analoga all’operatore, che prevede di inserire come parametri stringhe o riferimenti a celle.

Quindi inserendo =Concatena(“EmiliaRomagna”; “Bologna”), o =Concatena(A2; B2) otterremo lo stesso risultato visto in precedenza.

Invece Concat() è una funzione introdotta con Excel 2016 che ha sostituito la precedente, fa le stesse identiche cose, ma è anche in grado di restituire stringhe complesse di intervalli molto grandi. Per esempio =Concat(A:A; B:B) restituisce una stringa unica composta dai valori presenti nelle celle della colonna A seguiti dai valori presenti nelle celle della colonna B.

Infine Testo.Unisci(delimitatore,ignora_vuote, testo1, [testo2], …) è simile a Concat, quindi può lavorare su molte celle e restituire stringhe molto lunghe, ma in più può inserire un delimitatore deciso da noi, per esempio una virgola(“,”). In realtà questo è utile solo in situazioni molto particolari.

Quale strumento usare per unire testi?

Il mio consiglio è di usare l’operatore di concatenamento se dobbiamo unire poche stringhe e usare le funzioni solo per concatenare molti testi.

Un’altra funzione che vale la pena conoscere quando uniamo stringhe diverse, o meglio quando creiamo nuovi testi, è Ripeti(testo; volte) che restituisce una stringa ripetendola N volte. Questo insieme alle funzioni di concatenamento appena viste e alle funzioni che vedremo di seguito permette di creare testi anche complessi.

testi e libri

Le funzioni Excel per trovare stringhe in testi

Spesso abbiamo bisogno di cercare un carattere o una stringa in un testo, che non sappiamo dove sia posizionato. Per individuare stringhe in un testo possiamo usare le funzioni di ricerca destinate ai testi: Ricerca() e Trova().

RICERCA (testo; stringa; inizio)

Questa funzione cerca una stringa all’interno di un testo e restituisce un numero intero che corrisponde alla posizione iniziale della stringa individuata nel testo. Per esempio, se cerchiamo “pos” in “Composizione del prodotto” restituirà il valore 4. Se la stringa non è presente viene restituito un errore (#Valore).

Inoltre permette di indicare da quale carattere del testo la funzione deve iniziare a cercare (parametro “inizio”). Per esempio con: RICERCA(“yh”; B5; 3) la funzione cercherà “yh” nella cella B5 a partire dal terzo carattere e se la troverà restituirà la sua posizione. Altrimenti presenta un errore.

È importante sottolineare che:

  1. Ricerca() non rileva la differenza tra maiuscole e minuscole,
  2. mentre è possibile usare i caratteri jolly, per esempio il punto interrogativo (?), che rappresenta un singolo carattere, e l’asterisco (*), che invece rappresenta una sequenza qualsiasi di caratteri,
  3. se il valore di inizio è minore di 1 o maggiore della lunghezza del testo, viene restituito un errore (#Value!).

TROVA (testo; stringa; inizio)

È la funzione gemella della precedente, funziona quasi allo stesso modo, con alcune differenze che possono diventare significative in certe situazioni. In particolare:

  1. distingue tra lettere maiuscole e minuscole,
  2. non supporta i caratteri jolly,
  3. se la stringa è vuota (“”), restituirà il primo carattere della stringa o il numero di inizio.

Trova è utile quando dobbiamo lavorare su maiuscole, ma non permette di usare caratteri jolly con cui rendere più efficiente la ricerca.

Quando si usano le funzioni Excel di ricerca

Si usano di solito in campi calcolati aggiunti a tabelle per esempio per:

  1. l’individuazione di parole chiave e quindi per creare nuove categorie,
  2. l’estrazione di una porzione identificabile del testo stesso,
  3. la sostituzione o l’inserimento di stringhe all’interno di testi, codici, o chiavi,

e altro ancora.

Funzioni di Excel

Le funzioni Excel per estrarre stringhe

Un’altra applicazione frequente delle funzioni Excel di testo è quella dell’estrazione di stringhe e può essere realizzata con funzioni e tecniche diverse a seconda se la stringa:

  1. è sempre presente e posizionata in modo noto,
  2. è presente, ma non si conosce la posizione esatta,
  3. può non essere presente
  1. Stringa presente posizionata

Se dobbiamo estrarre da un testo una porzione che sappiamo dov’è posizionata, allora possiamo usare le funzioni Stringa.Estrai(), Destra(), Sinistra(), Lunghezza().

Destra(testo; [num_caratt]) e Sinistra(testo; [num_caratt]) restituisce la stringa di N caratteri a partire dal primo carattere a destra o a sinistra del testo. Stringa.Estrai(testo; inizio; num_caratt) restituisce la stringa di N caratteri a partire da un carattere preciso. Lunghezza(testo) restituisce il numero di caratteri del testo.

Queste funzioni permettono di “smontare” ed estrarre stringhe da testi codificati come chiavi univoche (cod cliente, cod prodotto, ecc).

Per esempio =Sinistra(“Aspettando”;3) restituisce la stringa “Asp”. =Stringa.Estrai(“Aspettando”; 4; 3) restituisce “ett” cioè la stringa di 3 caratteri a partire dal 4° carattere. Oppure =Destra(Sinistra(“Aspettando”;7);3) restituisce “tta”. Invece =Destra(Sinistra(B3; Lunghezza(B3)-2);3) restituisce “tan” se la cella B3 contiene “Aspettando”, oppure restituisce la stringa di 3 caratteri a partire dal 3 carattere da destra della stringa.

  1. Stringa presente ma in posizione sconosciuta

Se siamo certi che la stringa è presente nel testo, dobbiamo individuarne la posizione e gli strumenti più adatto sono le funzioni di ricerca viste in precedenza: Trova() e Ricerca().

Queste permettono di individuare la posizione della stringa e funzioni come Stringa.Estrai() permettono di estrarla. Tra l’altro Ricerca() permette di usare caratteri jolly e quindi di cercare stringhe non univoche in modo flessibile. Per esempio, =Stringa.Estrai(B3; Ricerca(B3; “w”; 3); 4) cerca il carattere “w” nel testo a partire dal terzo carattere da sinistra e quando lo trova restituisce la stringa di 4 caratteri che inizia con “w”.

  1. Stringa presente ma in posizione sconosciuta

E se invece non siamo certi della presenza della stringa?

Usiamo sempre le funzioni di ricerca, ma dobbiamo usare funzioni per gestire gli errori ed eventualmente offrire stringhe alternative. Per esempio =Se.Errore(Stringa.Estrai(B3; Ricerca(B3; “W”; 3); 4); “Assente”), restituisce la stringa vista in precedenza se presente, oppure “Assente” se la stringa ricercata è assente.

Le funzioni Excel per sostituire porzioni di testo

Se invece di estrarre una stringa del testo, hai bisogno di replicare il testo sostituendone una porzione allora puoi usare funzioni specifiche come Sostituisci() e Rimpiazza().

Sostituisci(testo; testo_prec; nuovo_testo; [occorrenza]) ricerca e sostituisce una stringa in un testo con una nuova stringa e se questo si ripete possiamo dirgli dove farlo. RIMPIAZZA(testo_prec; inizio; num_caratt; nuovo_testo) è simile, ma sostituisce un numero preciso di caratteri in una posizione specifica con la stringa che vogliamo.

Per esempio, =SOSTITUISCI(“Articolo A345dg”; “Articolo”; “Prodotto”) nel testo “Articolo A345dg” sostituisce “Articolo” con “Prodotto” restituendo “Prodotto A345dg”. Invece =RIMPIAZZA(“Fatturato 2017”;11;4;”2018″) modifica il testo “Fatturato 2017” sostituendo dal carattere numero 4 caratteri, cioè “2017” con “2018”.

Le funzioni di sostituzione sono meno utilizzate delle funzioni di estrazione, ma sono complementari e vale la pena conoscerle. Mentre Rimpiazza() in sostanza prevede che noi conosciamo la struttura del testo e quindi che c’è una stringa precisa in un posizione precisa del testo, Sostituisci() è in parte una funzione di ricerca che individua una stringa nel testo per poi sostituirla con una nuova stringa. Se Sostituisci non trova la stringa che vogliamo sostituire restituisce il testo originale.

Revisione dei testi in Excel

La funzione Excel per rimuovere gli spazi in eccesso

Nel passato gli spazi in eccesso nei testi potevano dare diversi problemi, ad altre funzioni (es: ricerca) o altri strumenti, quindi in presenza di testi “sporchi”, cioè non filtrati da controlli all’inserimento, rimuovere gli spazi in eccesso era un modo veloce per poter preparare i dati all’elaborazione.

Per farlo c’è una classica funzione: Annulla.Spazi(testo) che restituisce il testo senza spazi in più, cioè rimuove gli spazi prima e dopo il testo e lascia un solo spazio tra le parole del testo, rimuovendo spazi in eccesso.

Per esempio se applichiamo questa funzione a “Margherita ”, così =Annulla.Spazi(“Margherita ”), questo restituirà “Margherita”. Invece =Annulla.Spazi(“Mario  Rossi”) restituirà “Mario Rossi”.

Le funzioni per trasformare i testi

Ci sono decine di funzioni specifiche per trasformare i formati dei testi in situazioni specifiche, che non dovrebbero presentarsi se le basi dati sono affidabili o se abbiamo inserito correttamente i nostri testi.

Tra queste funzioni vale la pena ricordare quelle che gestiscono il maiuscolo e il minuscolo dei testi: Maiusc(), Minusc() e Maiusc.Iniz(). Utili se dobbiamo fare revisioni dei testi, per esempio per eliminare il maiuscolo o per correggere nomi propri. Per esempio =Minusc(A3) riduce a minuscolo il testo della cella A3, mentre Maiusc.Iniz(A3) mette le maiuscole a inizio di ogni parola del testo e riduce a minuscolo tutto il resto.

Infine è importante conoscere la funzione =TESTO(Valore da formattare;”Codice formato da applicare”) che in sostanza trasforma il formato di un dato, anche di un numero, in un altro formato. Quindi possiamo trasformare un numero in una data, un numero in un altro formato numerico, un numero in un testo, eccetera.

Per esempio, =TESTO(OGGI();”GG/MM/AA”) visualizza la data di oggi come 13/02/17. Oppure =TESTO(B3;”0,0%”) trasforma il numero decimale della cella B3 in una percentuale con un decimale (17,3%). O =TESTO(C4;”MMMM”) trasforma il mese in forma di numero intero da 1 a 12 nella cella C4 nella versione testuale (es: 1 in “gennaio”). E se volessimo invece “Gennaio”? Dovremmo usare questa formula: =MAIUSC.INIZ(TESTO(C4;”MMMM”)).

Per usare al meglio questa funzione Testo() devi conoscere i formati dei dati di Excel e per questo ti invito a leggere attentamente questo post sul sito microsoft e a esaminare i formati personalizzati che trovi in Excel.

Dove? Premi Ctrl+1 per aprire la finestra formati e clicca sulla voce “Personalizzato” della lista. Prova i diversi formati preimpostati e prova a modificarli per comprendere come funzionano.

Conclusioni

Abbiamo visto che Excel offre diversi strumenti per la gestione e l’elaborazione di testi. I testi sono dati che accompagnano sempre i dati numerici su cui di solito lavoriamo e di solito hanno funzione di parametri e categorie che utilizziamo per visualizzare distribuzioni o altro.

Di solito non dovremmo aver bisogno di intervenire sui testi, ma ci sono diverse situazioni in cui conoscere gli strumenti per farli diventa opportuno e molto utile.

Nonostante Excel non sia un word processor, come abbiamo visto è dotato di strumenti che possono manipolare finemente i testi inseriti in celle o tabelle. Questo può essere utile in molti modi e situazioni, per esempio per costruire e manipolare chiavi alfanumeriche codificate, come per individuare ed estrarre stringhe rilevanti, perfino correggere e costruire testi e note. E molto altro ancora.

 

 

 

PS: Se il post ti è piaciuto, condividi questa pagina con gli amici e sui social.

Puoi farlo attraverso i pulsanti qui di seguito. Grazie

Rispondi

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.