Come convertire il testo in valori di data in Microsoft Excel

L’elaborazione dei dati aziendali spesso implica la manipolazione di valori di data in Excel per ottenere risposte a quesiti come “quanto abbiamo guadagnato oggi?” o “come si confronta con lo stesso giorno della settimana precedente?”. Questo compito può diventare complicato quando Excel non riconosce determinati valori come date.

Purtroppo, questa situazione non è rara, soprattutto quando più utenti inseriscono manualmente le informazioni, effettuano operazioni di copia e incolla da altri sistemi o importano dati da database.

In questo articolo, analizzeremo quattro scenari differenti e le relative soluzioni per trasformare stringhe di testo in valori di data effettivi.

Date con separatori a punto

Uno degli errori più frequenti commessi da chi si approccia per la prima volta a Excel è l’utilizzo del punto come separatore tra giorno, mese e anno.

Excel non interpreterà questi dati come date, ma li considererà come testo. Tuttavia, questo problema può essere facilmente risolto grazie alla funzione “Trova e sostituisci”. Sostituendo i punti con le barre (/), Excel sarà in grado di riconoscere automaticamente i valori come date.

Per iniziare, seleziona le colonne in cui intendi effettuare la ricerca e la sostituzione.

Successivamente, clicca su Home > Trova e seleziona > Sostituisci, oppure premi la combinazione di tasti Ctrl + H.

Nella finestra “Trova e sostituisci”, inserisci un punto (.) nel campo “Trova” e una barra (/) nel campo “Sostituisci con”. Dopodiché, clicca su “Sostituisci tutto”.

In questo modo, tutti i punti saranno rimpiazzati da barre e Excel riconoscerà il nuovo formato come date.

Se le modifiche al foglio di lavoro sono frequenti e hai bisogno di una soluzione automatizzata, puoi ricorrere alla funzione SOSTITUISCI.

=VALORE(SOSTITUISCI(A2;".";"/"))

La funzione SOSTITUISCI è una funzione di tipo testo e quindi, da sola, non è in grado di convertire in data. La funzione VALORE, invece, trasformerà il valore di testo in un valore numerico.

I risultati ottenuti sono mostrati di seguito. Occorre formattare il valore come data.

Per farlo, usa l’elenco “Formato numero” nella scheda “Home”.

L’esempio mostrato è tipico, ma puoi applicare la medesima tecnica per sostituire o eliminare qualunque tipo di separatore.

Conversione del formato aaaammgg

Se le date sono nel formato indicato qui sotto, è necessario adottare un approccio differente.

Questo formato è piuttosto diffuso in ambito informatico perché evita qualsiasi ambiguità nel modo in cui i vari paesi memorizzano i valori di data. Tuttavia, Excel non lo interpreterà correttamente in un primo momento.

Per una soluzione rapida e manuale, puoi usare la funzione “Testo in colonne”.

Seleziona l’intervallo di valori che intendi convertire e clicca su Dati > Testo in colonne.

Si aprirà la procedura guidata “Testo in colonne”. Clicca su “Avanti” nei primi due passaggi per arrivare al terzo, come mostrato nell’immagine sottostante. Seleziona “Data” e poi il formato della data che viene utilizzato nelle celle. In questo esempio, abbiamo a che fare con un formato AAM.

Se invece preferisci una soluzione con formula, puoi usare la funzione DATA per costruire la data.

Questa funzione si usa insieme alle funzioni di testo SINISTRA, STRINGA.ESTRAI e DESTRA per ricavare le tre componenti di una data (giorno, mese e anno) dal contenuto della cella.

La formula seguente ne mostra l’applicazione utilizzando i dati di esempio.

=DATA(SINISTRA(A2;4);STRINGA.ESTRAI(A2;5;2);DESTRA(A2;2))

Servendosi di una di queste tecniche, è possibile convertire qualunque valore numerico di otto cifre. Ad esempio, potresti ricevere la data in formato ggmmaaaa o mmggaaaa.

Funzioni DATA.VALORE e VALORE

A volte il problema non è dovuto a un carattere separatore, ma alla struttura non convenzionale della data, semplicemente perché è memorizzata come testo.

Qui di seguito è riportato un elenco di date in diverse strutture, ma tutte facilmente riconoscibili come date. Purtroppo, sono state salvate come testo e necessitano di conversione.

In questi casi, è facile eseguire la conversione mediante svariate tecniche.

Ai fini di questo articolo, voglio ricordare due funzioni particolarmente utili per gestire queste situazioni: DATA.VALORE e VALORE.

La funzione DATA.VALORE trasformerà il testo in un valore di data (come ci si aspetta), mentre la funzione VALORE convertirà il testo in un valore numerico generico. Le differenze tra le due funzioni sono minime.

Nell’immagine mostrata sopra, uno dei valori contiene anche informazioni sull’ora. Ciò ci permetterà di dimostrare le piccole differenze tra le funzioni.

La formula DATA.VALORE qui sotto convertirà ognuno di questi valori in un valore di data.

=DATA.VALORE(A2)

Si noti come l’ora sia stata rimossa dal risultato nella riga 4. Questa formula restituisce solo il valore della data. Il risultato dovrà comunque essere formattato come data.

La formula seguente utilizza la funzione VALORE.

=VALORE(A2)

Questa formula produrrà gli stessi risultati ad eccezione della riga 4, dove viene mantenuto anche il valore temporale.

I risultati possono poi essere formattati come data e ora o solo come data, per nascondere il valore dell’ora (senza però rimuoverlo).