www.valterborsato.it

Concatenare (unire) stringhe contenute in più celle, intervalli o colonne

In questo tutorial, vengono presentate le varie tecniche per unire delle stringhe di testo in Excel ovvero per combinare in una unica cella o colonna informazioni che sul fFglio di lavoro si presentano divise in una o più parti.
Un esempio classico potrebbero essere quello delle informazioni anagrafiche che si vogliono unire in una etichetta per combinare un indirizzo, oppure parti di informazioni che unite e integrate creano dei codici.
Excel per queste operazioni di concatenazione mette a disposizione due Funzioni CONCATENA e CONCAT e l'operatore di concatenazione la "&".
La Funzione CONCATENA esattamente come l'operatore &, permette di unire più stringhe di testo in un'unica cella, creando una porzione di testo più lunga e complessa.
Con la versione 2016 di Excel, Microsoft ha introdotto la nuova Funzione CONCAT che a differenza della vecchia Funzione CONCATENA consente di individuare anche un intervallo di celle da unire, oltre ovviamente a singoli riferimenti di cella o testi.
:: La Funzione CONCAT di fatto sostituisce la vecchia Funzione CONCATENA che probabilmente rimarrà disponibile per compatibilità con le versioni precedenti alla 2016.
Nel momento che in una cella si imputa l'inizio della Funzione =conc Excel nei suggerimenti ci notifica con un punto esclamativo all'interno di un triangolo giallo che la Funzione CONCATENA è obsoleta. (vedi immagine)

Gli argomenti trattati nel presente tutorial:

01 - La nuova Funzione CONCAT
02 - La Funzione CONCATENA
03 - Nidificare Funzioni all'interno della Funzione CONCAT (SINISTRA, DESTRA, STRINGA.ESTRAI)
04 - L'operatore di Concatenazione "&"
05 - Concatenare i risultati di Funzioni di Excel con CONCAT o con il simbolo &
06 - Concatenare stringhe inserendo delle interruzioni di riga, con la Funzione CODICE.CARATT (Creare etichette)
07 - Concatenare stringhe e informazioni numeriche formattate (Es. la data) con la Funzione TESTO

La nuova Funzione CONCAT

La Funzione CONCAT, concatena un intervallo o un elenco di celle.
Questa funzione è disponibile dalla versione Excel 2016 e di fatto sostituisce e rende obsoleta la precedente Funzione CONCATENA.

Sintassi della Funzione CONCAT

=CONCAT(testo1; [testo2];…)
Nella quale il testo1 e successivi, rappresentano una cella, un testo (deve essere espresso fra doppi apici) o un intervallo di celle.
La Funzione CONCAT al contrario della Funzione CONCATENA permette di definire la concatenazione anche di un intervallo di celle.

Esempio di applicazione della Funzione CONCAT

Si vuole creare una unica stringa di testo che descriva nome e cognome del venditore e unisca il codice aziendale con il codice del venditore.
Nella cella E2, è stata inserita la seguente Funzione: =CONCAT(A2;" ";B2;" ";C2:D2)
Nella quale sono stati individuati riferimenti di celle, spazi e nel caso dell'ultimo argomento C2:D2 un intervallo di celle.

La nuova Funzione CONCAT di Excel 

:: Limiti della funzione CONCAT: se la stringa risultante dovesse superare i 32.767 caratteri (limite di caratteri in una cella), CONCAT restituisce il codice di errore #VALORE!. La Funzione può unire fino ad un massimo di 255 stringhe di testo.

La Funzione CONCATENA

La Funzione CONCATENA, unisce una o più stringhe di testo.
La Funzione CONCATENA nel 2016 è stata di fatto sostituita dalla nuova Funzione CONCAT e viene per ora mantenuta per compatibilità con le vecchie versioni di Excel. Questa Funzione in futuro potrebbe non essere più disponibile.

Sintassi della Funzione CONCATENA

=CONCATENA(testo1; [testo2]; ...)
Dove testo1 e successivi possono rappresentare contenuti di celle, Funzioni che estraggono parti di testo da celle, oppure testi nel qual caso andranno espressi fra doppi apici. Es.: "testo".

Esempio di applicazione della Funzione CONCATENA. Si vuole unire in una unica cella il contenuto del Nome e Cognome presente su due diverse celle del Foglio di lavoro di Excel.
Per staccare le due stringhe di testo del Nome e Cognome è necessaria la concatenazione di uno spazio vuoto che va indicato ad Excel con doppi apici contenenti il carattere barra spaziatrice " "
Nell'esempio rappresentato nell'immagine La concatenazione viene espressa con la seguente sintassi
=CONCATENA(B4;" ";C4)

La Funzione CONCATENA di Excel | Esempio concatenazione testi

Nella Funzione CONCATENA possono essere inseriti anche dei testi, aggiungendo informazioni o precisazioni rispetto determinati valori.
Nell'esempio proposto nella sottostante immagine al codice della partita iva di un cliente viene aggiunta una stringa descrittiva. In questo caso il carattere di spaziatura fra i due testi è inserito aggiungendo semplicemente uno spazio vuoto al termine del testo "Partita Iva Numero "

La Funzione CONCATENA di Excel | Esempio concatenazione testi

Nidificare Funzioni all'interno della Funzione CONCAT

Come spesso accade nelle Funzioni di testo, le Funzioni CONCATENA e CONCAT possono risultare particolarmente interessante se nidifica con altre Funzioni.
Con le Funzioni di testo SINISTRA, DESTRA E STRINGA.ESTRAI, è possibile concatenare solo alcune parti di testo provenienti da celle diverse del Foglio di lavoro.
Esempio. (vedi immagine sottostante)
Sfruttando la Funzione SINISTRA, viene estratta solo la lettera iniziale dalla cella B4 e viene concatenata con un punto e con il contenuto della cella C4. Se si volesse con questo processo generare il codice di un indirizzo di posta elettronica, è possibile aggiungere il testo che descrive il dominio di posta e anteporre la Funzione MINUSC per convertire l'intero testo in minuscolo.
Per approfondimento su questa Formula si rimanda all'esercizio-esempio: Creare un casellario email sulla base dei valori presenti in una anagrafica dati

La Funzione CONCATENA di Excel | Nidificare Funzioni all'interno di CONCATENA

Il simbolo di concatenazione & valida e semplice alternativa alle Funzioni CONCAT e CONCATENA

Un sistema molto più semplice e veloce per impostare una concatenazione è quello di applicare l'operatore & per unire stringhe di testo, Funzioni o riferimenti a celle.
Per concatenare due celle con uno spazio è ad esempio sufficiente imputare =A1&" "&A2.
Analogamente alla Finzione CONCAT è possibile utilizzare la "&" per unire stringhe di testo valori contenuti nelle celle e risultati di Funzioni.
Nell'esempio rappresentato nella sottostante immagine, viene proposta l'alternativa alla Funzione =CONCATENA(SINISTRA(B4;1);".";C4) utilizzando il simbolo & al posto della Funzione CONCATENA.
La sintassi della Formula sarà espressa da =SINISTRA(B4;1)&"."&C4
Molto spesso si preferisce applicare l'operatore di concatenazione & per la semplicità di dover imputare un solo carattere senza impostare una Funzione.

La Funzione CONCATENA di Excel | Utilizzare l'operatore di concatenazione &

Concatenare i risultati di Funzioni di Excel con CONCAT o con il simbolo &

La Funzione CONCAT o il Simbolo di Concatenazione &, tornano molto utili qualora si volessero rappresentare due risultati di ricerca all'interno di una unca cella.
Esempio. Attraverso l'utilizzo di due Funzioni CERCA.VERT si vuole riportare in un'unica cella sia la categoria sia il nome del prodotto originariamente presenti in due distinte colonne.

La Funzione CONCATENA di Excel | Concatenare Funzioni

Concatenare stringhe inserendo delle interruzioni di riga, con la Funzione CODICE.CARATT (Creare etichette di indirizzi)

oltre ad utilizzare caratteri separatori oppure spazi, nel concatenare delle stringhe di testo può tornare utile inserire un comando per impostare un ritorno a capo riga (interruzione di riga).
Ovviamente non è possibile in una Formula o Funzione istruire questo comando come si potrebbe fare ad esempio in un cella con la combinazione CTRL+INVIO.
Con la Funzione CODICE.CARATT è però possibile richiamare un comando di avanzamento di riga che con il codice ASCII è rappresentato dal  numero 10

La Funzione CODICE.CARATT

La Funzione CODICE.CARATT restituisce il carattere specificato da un numero
La sintassi della Funzione è molto semplice
=CODICE.CARATT(num)
nella quale num (argomento obbligatorio) rappresenta un numero compreso da 1 fino a 255 e rappresenta il codice ASCII.
Le possibilità di applicazione di questa Funzione sono abbastanza limitate, quella dell'inserimento di una interruzione di riga è forse quella maggiormente applicata.

Esempio Applicazione della Funzione CODICE.CARATT nella costruzione di una etichetta di testo

Nella tabella raffigurata nella sottostante immagine, nella colonna F si vuole creare una etichetta che preveda di concatenare il Nome e il Cognome, andare a capo nella cella, riportare la via, andare nuovamente a capo ed infine nella terza riga unire il codice del CAP con il comune.
La formula inserita è la seguente =A2&" "&B2&CODICE.CARATT(10)&C2&CODICE.CARATT(10)&D2&" "&E2 nella quale compare due volte la funzione CODICE.CARATT(10) per definire i due comandi di a capo riga.

Concatenare stringhe inserendo delle interruzioni di riga, con la Funzione CODICE.CARATT - per creare una etichette di indirizzo

Concatenare stringhe e informazioni numeriche formattate quali ad esempio la data

Un ulteriore esempio particolare di concatenazione, potrebbe essere fornito dalla necessità di concatenare una stringa si testo con una informazione numerica formattata (quale ad esempio il formato data, ora, percentuale etc)
Ad esempio unire in una stringa l'informazione della località con la data attuale.
L'operazione a prima vista potrebbe sembrare semplice ovvero  ="Verona "&OGGI() in realtà questo tipo di concatenazione restituirebbe la stringa di testo "Verona " unita con il numero seriale della data di oggi.
Per ottenere il risultato corretto è necessario nidificare la Funzione OGGI nella Funzione TESTO.
L'impostazione corretta della formula è la seguente
="Verona "&TESTO(OGGI();"gg/mm/aaaa")

Per un approfondimento sul numero seriale delle date si rimanda a: Le Funzioni GIORNO; MESE; ANNO; FRAZIONE.ANNO - Calcolare le date in Excel
Per un approfondimento sulla Funzione TESTO si rimanda a: La Funzione TESTO di Excel

Concatenare stringhe e informazioni numeriche formattate quali ad esempio la data 

Indice Generale Argomenti: