Sommario
L'esercitazione spiega come utilizzare le funzioni di Excel per convertire il testo in data e il numero in data e come trasformare le stringhe di testo in date in modo non formulare. Imparerete anche a cambiare rapidamente il formato di un numero in quello di una data.
Poiché Excel non è l'unica applicazione con cui si lavora, a volte ci si trova a lavorare con date importate in un foglio di lavoro Excel da un file .csv o da un'altra fonte esterna. In questo caso, è probabile che le date vengano esportate come voci di testo. Anche se sembrano date, Excel non le riconosce come tali.
Esistono molti modi per convertire il testo in data in Excel e questa esercitazione si propone di illustrarli tutti, in modo che possiate scegliere la tecnica di conversione testo-data più adatta al vostro formato di dati e alla vostra preferenza per un metodo con o senza formula.
Come distinguere le normali date di Excel dalle "date di testo
Quando si importano dati in Excel, spesso si verifica un problema con la formattazione delle date. Le voci importate possono sembrare normali date di Excel, ma non si comportano come tali. Microsoft Excel tratta tali voci come testo, il che significa che non è possibile ordinare correttamente la tabella per data, né utilizzare queste "date di testo" in formule, tabelle Pivot, grafici o qualsiasi altro strumento di Excel che riconosce le date.
Esistono alcuni segnali che possono aiutare a determinare se una determinata voce è una data o un valore di testo.
Date | Valori di testo |
|
|
Come convertire un numero in una data in Excel
Poiché tutte le funzioni di Excel che trasformano un testo in una data restituiscono un numero come risultato, vediamo prima di tutto come convertire i numeri in date.
Come probabilmente sapete, Excel memorizza le date e gli orari come numeri di serie ed è solo la formattazione di una cella a costringere un numero a essere visualizzato come data. Ad esempio, 1-Gen-1900 è memorizzato come numero 1, 2-Gen-1900 è memorizzato come 2 e 1-Gen-2015 è memorizzato come 42005. Per ulteriori informazioni su come Excel memorizza le date e gli orari, consultare la sezione Formato data di Excel.
Quando si calcolano le date in Excel, il risultato restituito da diverse funzioni di data è spesso un numero seriale che rappresenta una data. Ad esempio, se =TODAY()+7 restituisce un numero come 44286 invece della data che è 7 giorni dopo oggi, non significa che la formula sia sbagliata. Semplicemente, il formato della cella è impostato su Generale o Testo mentre dovrebbe essere Data .
Per convertire il numero di serie in data, è sufficiente cambiare il formato del numero di cella. Per farlo, è sufficiente selezionare Data nel Formato del numero sulla casella Casa scheda.
Per applicare un formato diverso da quello predefinito, selezionare le celle con i numeri di serie e premere Ctrl+1 per aprire l'opzione Formattare le celle Sulla finestra di dialogo Numero selezionare la scheda Data , selezionare il formato di data desiderato sotto Tipo e fare clic su OK.
Se volete qualcosa di più sofisticato dei formati di data predefiniti di Excel, consultate come creare un formato di data personalizzato in Excel.
Se un numero ostinato si rifiuta di essere trasformato in una data, consultate Excel Formato data non funzionante - suggerimenti per la risoluzione dei problemi.
Come convertire un numero di 8 cifre in una data in Excel
È una situazione molto comune quando una data viene immessa come numero di 8 cifre, come 10032016, e occorre convertirla in un valore di data che Excel possa riconoscere (10/03/2016). In questo caso, cambiare semplicemente il formato della cella in Data non funzionerà: il risultato sarà ##########.
Per convertire un numero di questo tipo in data, è necessario utilizzare la funzione DATA in combinazione con le funzioni DESTRA, SINISTRA e MEDIO. Purtroppo non è possibile creare una formula universale che funzioni in tutti gli scenari, poiché il numero originale può essere inserito in una varietà di formati diversi. Ad esempio:
Numero | Formato | Data |
10032016 | ddmmyyyy | 10-Mar-2016 |
20160310 | aaaammgg | |
20161003 | yyyyddmm |
In ogni caso, cercherò di spiegare l'approccio generale alla conversione di tali numeri in date e di fornire alcuni esempi di formule.
Per cominciare, ricordate l'ordine degli argomenti della funzione Data di Excel:
DATA(anno, mese, giorno)È quindi necessario estrarre anno, mese e data dal numero originale e fornirli come argomenti corrispondenti alla funzione Date.
Ad esempio, vediamo come convertire il numero 10032016 (memorizzato nella cella A1) nella data 3/10/2016.
- Estrarre il anno Sono le ultime 4 cifre, quindi usiamo la funzione RIGHT per scegliere gli ultimi 4 caratteri: RIGHT(A1, 4).
- Estrarre il mese Sono la terza e la quarta cifra, quindi utilizziamo la funzione MID per ottenerle MID(A1, 3, 2). Dove 3 (secondo argomento) è il numero iniziale e 2 (terzo argomento) è il numero di caratteri da estrarre.
- Estrarre il giorno Sono le prime 2 cifre, quindi abbiamo la funzione LEFT per restituire i primi 2 caratteri: LEFT(A2,2).
Infine, incorporando gli ingredienti di cui sopra nella funzione Data, si ottiene una formula per convertire un numero in una data in Excel:
=DATA(DESTRA(A1,4), METÀ(A1,3,2), SINISTRA(A1,2))
L'immagine seguente mostra questa e altre formule in azione:
Prestate attenzione all'ultima formula nella schermata precedente (riga 6). Il numero-data originale (161003) contiene solo 2 caratteri che rappresentano un anno (16). Quindi, per ottenere l'anno 2016, concateniamo 20 e 16 usando la seguente formula: 20&LEFT(A6,2). Se non si esegue questa operazione, la funzione Date restituirà 1916 per impostazione predefinita, il che è un po' strano come se Microsoft vivesse ancora nel XX secolo :)
Nota: le formule dimostrate in questo esempio funzionano correttamente a condizione che tutti i numeri che si desidera convertire in date, seguire la procedura stesso schema .
Come convertire il testo in data in Excel
Quando si trovano delle date di testo nel file Excel, molto probabilmente si desidera convertire queste stringhe di testo in normali date di Excel, in modo da potervi fare riferimento nelle formule per eseguire vari calcoli. E come spesso accade in Excel, ci sono alcuni modi per affrontare il compito.
Funzione DATEVALUE di Excel - cambiare il testo in data
Il VALORE DATO in Excel converte una data nel formato testo in un numero seriale che Excel riconosce come data.
La sintassi di DATEVALUE di Excel è molto semplice:
DATEVALUE(data_testo) Quindi, la formula per convertire un valore di testo in data è semplice come =DATEVALORE(A1)
dove A1 è una cella con una data memorizzata come stringa di testo.
Poiché la funzione DATEVALORE di Excel converte una data di testo in un numero di serie, è necessario far apparire il numero come una data applicandovi il formato Data, come abbiamo discusso poco fa.
Le schermate seguenti mostrano alcune formule di Excel DATEVALUE in azione:
Funzione DATEVALORE di Excel: cose da ricordare
Quando si converte una stringa di testo in una data utilizzando la funzione DATEVALUE, occorre tenere presente che:
- Le informazioni sull'ora nelle stringhe di testo vengono ignorate, come si può vedere nelle righe 6 e 8. Per convertire i valori di testo contenenti sia date che ore, utilizzare la funzione VALORE.
- Se l'anno è omesso in una data di testo, DATEVALUE di Excel sceglierà l'anno corrente dall'orologio di sistema del computer, come dimostrato nella riga 4 qui sopra.
- Poiché Microsoft Excel memorizza le date a partire dal 1° gennaio 1900, l'uso della funzione DATEVALUE di Excel su date precedenti darà luogo all'errore #VALUE!
- La funzione DATEVALUE non è in grado di convertire un valore numerico in data, né di elaborare una stringa di testo che assomiglia a un numero; per questo è necessario utilizzare la funzione VALORE di Excel, di cui parleremo in seguito.
Funzione VALORE di Excel: conversione di una stringa di testo in data
Rispetto a DATEVALUE, la funzione VALORE di Excel è più versatile: può convertire qualsiasi stringa di testo che assomigli a una data o a un numero in un numero, che può essere facilmente modificato in un formato di data a scelta.
La sintassi della funzione VALORE è la seguente:
Dove testo
è una stringa di testo o un riferimento a una cella contenente il testo da convertire in numero.
La funzione VALORE di Excel può elaborare sia data e ora , quest'ultimo viene convertito in una parte decimale, come si può vedere nella riga 6 della schermata seguente:
Operazioni matematiche per convertire il testo in date
Oltre a utilizzare funzioni specifiche di Excel come VALORE e DATEVALORE, è possibile eseguire una semplice operazione matematica per forzare Excel a eseguire una conversione testo-data. La condizione richiesta è che un'operazione non dovrebbe modificare il valore della data (numero di serie). Vi sembra un po' complicato? Gli esempi che seguono vi faciliteranno le cose!
Supponendo che la data del testo si trovi nella cella A1, è possibile utilizzare una delle seguenti formule e applicare il formato Data alla cella:
- Aggiunta:
=A1 + 0
- Moltiplicazione:
=A1 * 1
- Divisione:
=A1 / 1
- Doppia negazione:
=--A1
Come si può vedere nella schermata precedente, le operazioni matematiche possono convertire date (righe 2 e 4), orari (riga 6) e numeri formattati come testo (riga 8). A volte il risultato viene visualizzato automaticamente come data e non è necessario modificare il formato della cella.
Come convertire in date le stringhe di testo con delimitatori personalizzati
Se le date del testo contengono un delimitatore diverso da una barra (/) o da un trattino (-), le funzioni di Excel non saranno in grado di riconoscerle come date e restituiranno l'errore #VALORE!
Per risolvere questo problema, è possibile eseguire il comando di Excel Trova e sostituisci per sostituire il delimitatore con una barra (/), tutto in una volta:
- Selezionare tutte le stringhe di testo che si desidera convertire in date.
- Premere Ctrl+H per aprire la finestra Trova e sostituisci finestra di dialogo.
- Inserire il separatore personalizzato (un punto in questo esempio) nel campo Trova cosa e una barra nel campo Sostituire con
- Fare clic sul pulsante Sostituire tutti
Ora, la funzione DATEVALUE o VALUE non dovrebbe avere problemi a convertire le stringhe di testo in date. Allo stesso modo, è possibile correggere le date contenenti qualsiasi altro delimitatore, ad esempio uno spazio o una barra all'indietro.
Se si preferisce una soluzione con formula, è possibile utilizzare la funzione SOSTITUISCI di Excel al posto di Sostituire tutti per cambiare i delimitatori in barre.
Supponendo che le stringhe di testo si trovino nella colonna A, una formula SUBSTITUTE può avere il seguente aspetto:
=SOSTITUIRE(A1, ".", "/")
Dove A1 è una data di testo e "." è il delimitatore con cui vengono separate le stringhe.
Ora incorporiamo questa funzione SUBSTITUTE nella formula VALORE:
=VALORE(SOSTITUTO(A1, ".", "/"))
E far convertire le stringhe di testo in date, il tutto con un'unica formula.
Come si vede, le funzioni DATEVALUE e VALUE di Excel sono piuttosto potenti, ma entrambe hanno i loro limiti. Ad esempio, se si cerca di convertire stringhe di testo complesse come Giovedì 01 gennaio 2015, Fortunatamente, esiste una soluzione non basata su formule in grado di gestire questo compito e la prossima sezione ne illustra i passaggi dettagliati.
Procedura guidata da testo a colonne: per convertire il testo in date senza l'uso di formule.
Se siete un utente che non usa le formule, una funzione di Excel di vecchia data chiamata Testo alle colonne È in grado di gestire semplici date di testo, come mostrato nell'Esempio 1, e stringhe di testo in più parti, come mostrato nell'Esempio 2.
Esempio 1. Conversione di semplici stringhe di testo in date
Se le stringhe di testo che si desidera convertire in date assomigliano a una delle seguenti:
- 1.1.2015
- 1.2015
- 01 01 2015
- 2015/1/1
Non è necessario utilizzare formule, né esportare o importare alcunché: bastano 5 rapidi passaggi.
In questo esempio, convertiremo stringhe di testo come 01 01 2015 (giorno, mese e anno separati da spazi) in date.
- Nel foglio di lavoro di Excel, selezionare una colonna di voci di testo che si desidera convertire in date.
- Passare alla schermata Dati scheda, Strumenti per i dati e fare clic su Testo in colonne.
In questo esempio, stiamo convertendo le date del testo formattate come "01 02 2015" (mese giorno anno), quindi selezioniamo MDY dalla casella a discesa.
Ora Excel riconosce le stringhe di testo come date, le converte automaticamente nel formato di data predefinito e le visualizza allineate a destra nelle celle. È possibile modificare il formato della data nel modo consueto tramite il comando Formattare le celle dialogo.
Nota: per il Da testo a colonna per funzionare correttamente, tutte le stringhe di testo devono essere formattate in modo identico. Ad esempio, se alcune voci sono formattate come giorno/mese/anno formato, mentre altri sono mese/giorno/anno si otterrebbero risultati errati.
Esempio 2. Conversione di stringhe di testo complesse in date
Se le date sono rappresentate da stringhe di testo in più parti, come ad esempio:
- Giovedì 01 gennaio 2015
- 01 gennaio 2015 3 PM
Dovrete impegnarvi un po' di più e utilizzare entrambi i tasti Testo in colonne e la funzione DATE di Excel.
- Selezionare tutte le stringhe di testo da convertire in date.
- Fare clic sul pulsante Testo in colonne sul pulsante Dati scheda, Strumenti per i dati gruppo.
- Al passo 1 del Conversione guidata del testo in colonne , selezionare Delimitato e fare clic su Avanti .
- Al passo 2 della procedura guidata, selezionare i delimitatori contenuti nelle stringhe di testo.
Ad esempio, se si convertono stringhe separate da virgole e spazi, come " Giovedì 01 gennaio 2015" si devono scegliere entrambi i delimitatori: virgola e spazio.
È inoltre opportuno selezionare la voce " Tratta i delimitatori consecutivi come uno solo " per ignorare gli spazi extra, se i dati ne contengono.
Infine, date un'occhiata al Anteprima dei dati e verificare che le stringhe di testo siano suddivise correttamente in colonne, quindi fare clic su Avanti .
- Al passo 3 della procedura guidata, assicurarsi che tutte le colonne della sezione Anteprima dati abbiano la dicitura Generale Se non lo fanno, fare clic su una colonna e selezionare Generale sotto il Formato dei dati della colonna opzioni.
Nota: non scegliere l'opzione Data per qualsiasi colonna, perché ogni colonna contiene solo un componente, quindi Excel non è in grado di capire che si tratta di una data.
Se una colonna non è necessaria, fare clic su di essa e selezionare Non importare la colonna (saltare).
Se non volete sovrascrivere i dati originali, specificate il punto in cui le colonne devono essere inserite: inserite l'indirizzo della cella in alto a sinistra nel campo Destinazione campo.
Al termine, fare clic sul pulsante Finitura pulsante.
Come si vede nella schermata qui sopra, saltiamo la prima colonna con i giorni della settimana, dividendo gli altri dati in 3 colonne (nella colonna Generale e inserendo queste colonne a partire dalla cella C2.
La seguente schermata mostra il risultato, con i dati originali nella colonna A e i dati suddivisi nelle colonne C, D ed E.
- Infine, è necessario combinare insieme le parti della data utilizzando una formula DATE. La sintassi della funzione DATE di Excel si spiega da sola: DATE(anno, mese, giorno)
Nel nostro caso,
anno
è nella colonna E egiorno
è nella colonna D, non ci sono problemi.Non è così facile con
mese
Fortunatamente, Microsoft Excel offre una funzione speciale MESE che permette di cambiare il nome di un mese con il numero di un mese:=MONTE(numero_serie)
Affinché la funzione MESE capisca che si tratta di una data, la mettiamo così:
=MONTE(1&C2)
Dove C2 contiene il nome del mese, Gennaio nel nostro caso, "1&" viene aggiunto per concatenare una data ( 1 gennaio) in modo che la funzione MESE possa convertirlo nel numero del mese corrispondente.
E ora, incorporiamo la funzione MESE nel file
mese
argomento della nostra formula DATE:=DATE(F2,MESE(1&D2),E2)
E voilà, le nostre stringhe di testo complesse sono state convertite con successo in date:
Conversione rapida di date di testo con Incolla speciale
Per convertire rapidamente un intervallo di semplici stringhe di testo in date, è possibile utilizzare il seguente trucco.
- Copiare una cella vuota (selezionarla e premere Ctrl + C ).
- Selezionare l'intervallo con i valori di testo che si desidera convertire in date.
- Fare clic con il tasto destro del mouse sulla selezione, fare clic su Incolla speciale e selezionare Aggiungi nel Incolla speciale finestra di dialogo:
Per poterlo fare, Excel converte una stringa di testo in un numero e, poiché l'aggiunta di uno zero non modifica il valore, si ottiene esattamente quello che si voleva: il numero di serie della data. Come al solito, si cambia un numero nel formato della data utilizzando il comando Formattare le celle dialogo.
Per ulteriori informazioni sulla funzione Incolla speciale, vedere Come usare l'Incolla speciale in Excel.
Correggere le date del testo con anni a due cifre
Le versioni moderne di Microsoft Excel sono abbastanza intelligenti da individuare alcuni errori evidenti nei dati, o meglio, ciò che Excel considera un errore. Quando ciò accade, viene visualizzato un indicatore di errore (un piccolo triangolo verde) nell'angolo superiore sinistro della cella e, quando si seleziona la cella, appare un punto esclamativo:
Facendo clic sul punto esclamativo vengono visualizzate alcune opzioni relative ai dati. Nel caso di un anno a 2 cifre, Excel chiederà se si desidera convertirlo in 19XX o 20XX.
Se sono presenti più voci di questo tipo, è possibile risolverle tutte in un colpo solo: selezionare tutte le celle con errori, quindi fare clic sul punto esclamativo e selezionare l'opzione appropriata.
Come attivare il controllo degli errori in Excel
Di solito il controllo degli errori è abilitato per impostazione predefinita in Excel. Per accertarsene, fare clic su File > Opzioni > Formule , scorrere fino alla voce Controllo degli errori e verificare che le seguenti opzioni siano selezionate:
- Abilita il controllo degli errori in background sotto Controllo degli errori ;
- Celle contenenti anni rappresentati come 2 cifre sotto Regole di controllo degli errori .
Come cambiare il testo in data in Excel in modo semplice
Come vedete, convertire un testo in una data in Excel è tutt'altro che un'operazione banale da fare con un solo clic. Se siete confusi da tutti i diversi casi d'uso e dalle formule, lasciate che vi mostri un metodo rapido e diretto.
Installate la nostra Ultimate Suite (una versione di prova gratuita può essere scaricata qui), passate alla Strumenti Ablebits (verranno aggiunte al vostro Excel 2 nuove schede contenenti più di 70 fantastici strumenti!) e trovare la scheda Testo alla data pulsante:
Per convertire le date di testo in date normali, ecco cosa fare:
- Selezionate le celle con le stringhe di testo e fate clic sul pulsante Testo alla data pulsante.
- Specificare il ordine di data (giorni, mesi e anni) nelle celle selezionate.
- Scegliere se includere o meno tempo nelle date convertite.
- Cliccare Convertire .
I risultati della conversione appariranno nella colonna adiacente e i dati di origine saranno conservati. Se qualcosa va storto, si possono semplicemente cancellare i risultati e riprovare con un ordine di date diverso.
Suggerimento: se si è scelto di convertire gli orari e le date, ma nei risultati mancano le unità di tempo, assicurarsi di applicare un formato numerico che mostri sia i valori della data che quelli dell'ora. Per ulteriori informazioni, vedere Come creare formati di data e ora personalizzati.
Se siete curiosi di saperne di più su questo meraviglioso strumento, consultate la sua pagina iniziale: Text to Date for Excel.
Ecco come convertire il testo in data in Excel e cambiare le date in testo. Speriamo che siate riusciti a trovare una tecnica di vostro gradimento. Nel prossimo articolo affronteremo il compito opposto ed esploreremo diversi modi per convertire le date di Excel in stringhe di testo. Vi ringrazio per la lettura e spero di vedervi la prossima settimana.