Ho una colonna che è text formattato come 20110408_2041
. Come posso formattare il formato data / ora?
Supponendo che la string sia codificata YYYMMDD_HHMM per anno, mese, giorno, ora, minuto, allora è ansible creare una formula Excel per generare una cella nel formato data / ora.
Se la string è nella cella A1, allora questa formula dovrebbe farlo:
=DATE(LEFT(A1,4),MID(A1,5,2),MID(A1,7,2))+TIME(MID(A1,10,2),RIGHT(A1,2),0)
Devi formattare la cella correttamente per vedere la parte del tempo. Questo è testato in LibreOffice calc, ma Excel sembra avere le stesse funzioni.
Supponendo che l'integer formato sia YYYYMMDD_HHMM
e che il primo tale valore sia nella cella A1, è ansible utilizzare la formula seguente in B1:
=DATEVALUE(MID(A1,7,2) & "/" & MID(A1,5,2) & "/" & MID(A1,1,4)) + TIMEVALUE(MID(A1,10,2) & ":" & MID(A1,12,2))
Ciò crea un numero di serie della data basato sul DD / MM / YYYY usando la function MID per raccogliere ciascuna parte e la function DATEVALUE per restituire il numero di serie. Quindi aggiunge a questo il numero di serie temporale che utilizza la function MID in modo simile a raccogliere ore e minuti.
È quindi ansible formattare la cella come formato Data, formato orario o un formato personalizzato di dire gg / mm / aaaa hh: mm per vedere il risultato finale. Basta fare clic con il button destro del mouse sulla cella, scegliere Formato celle quindi configurare in modo simile all'image seguente:
Ecco uno screenshot del risultato finale:
Ho avuto lo stesso problema e ho fatto una semplice cosa: =R1*1
in S1, con il formato selezionato come Time, e ha funzionato. Non è stato necessario alcun codice complicato o altro.
È ansible farlo scrivendo un piccolo script (con C # ad esempio) che legge le stringhe dalla colonna che li converte in formato di data di data e quindi li salva nella colonna di Excel.
Spiacenti, non so se puoi farlo direttamente da Excel.