Conversione di un formato data non supportato (Microsoft Excel)
Non è raro caricare informazioni da altri programmi in Excel.
Ad esempio, potresti avere dati generati da un altro programma e desideri analizzare quei dati in Excel. Quando si importano dati in Excel, l’assegnazione dei tipi di dati corretti alle informazioni è abbastanza buona e può persino analizzare e convertire alcuni dati.
Quando si tratta di date e orari, tuttavia, non tutti i programmi parlano in un modo comprensibile da Excel. Ad esempio, se l’altro programma memorizza le date nel formato “Mon Jan 10 14:33:03 2011”, Excel non sarà in grado di analizzare la data e sarà necessario eseguire la conversione in un altro modo.
Fortunatamente, la maggior parte dei programmi genera la data e l’ora in un formato che segue uno schema. Supponendo, ad esempio, che “Mon Jan 10 14:33:03 2001” rappresenti il formato seguito da tutte le date, puoi eseguire la conversione utilizzando una semplice formula:
=DATEVALUE(MID(A1,9,2)&MID(A1,5,3)&RIGHT(A1,4)) + TIMEVALUE(MID(A1,12,8))
Questa formula presuppone che il formato data / ora esterno sia nella cella A1.
Formatta semplicemente il risultato della formula utilizzando uno dei formati data / ora di Excel e non avrai problemi.
Se preferisci, puoi utilizzare la funzione Testo in colonne per suddividere il formato data / ora estraneo nelle sue parti integranti:
-
Assicurati che ci siano quattro colonne vuote a destra della data / ora.
Qui è dove Excel inserirà le varie parti della data / ora.
-
Scegli tutte le celle che contengono le date / ore straniere.
-
Scegli Testo in colonne dal menu Dati. Excel avvia la Conversione guidata testo in colonne. (Vedi figura 1.)
-
Assicurati che Delimitato sia selezionato, quindi fai clic su Avanti. Excel visualizza il secondo passaggio della procedura guidata.
-
Assicurati che la casella di controllo Spazio sia selezionata.
-
Fare clic su Fine.
Le date e le ore sono ora separate in cinque singole colonne. È ora possibile utilizzare una formula per rimettere insieme una data / ora valida. Ad esempio, supponendo che la versione esplosa della data / ora sia nelle celle A1: E1, potresti usare quanto segue:
=(C1&B1&E1)+D2
Ancora una volta, formatta il risultato utilizzando un formato data / ora e sei pronto.
Se preferisci usare una macro per eseguire la conversione, la seguente macro passerà attraverso tutte le celle selezionate ed eseguirà la conversione:
Sub ConvDate() Dim c As Range For Each c In Selection.Cells c = DateValue(Mid(c, 5, 6) & ", " _ & Mid(c, 21, 4)) + TimeValue(Mid(c, 12, 8)) c.NumberFormat = "dd MMMM yyyy h:mm:ss" Next c End Sub
La macro converte la stringa di testo in una data / ora accettabile (utilizzando DateValue) e quindi formatta la cella per visualizzare la proprietà value.
_Nota: _
Se desideri sapere come utilizzare le macro descritte in questa pagina (o in qualsiasi altra pagina dei siti ExcelTips), ho preparato una pagina speciale che include informazioni utili.
ExcelTips è la tua fonte di formazione economica su Microsoft Excel.
Questo suggerimento (3014) si applica a Microsoft Excel 97, 2000, 2002 e 2003. Puoi trovare una versione di questo suggerimento per l’interfaccia a nastro di Excel (Excel 2007 e versioni successive) qui: