Il problema
Una cella datetime contiene dati con precisione fino a decimi di secondo o maggiore precisione, ma scarta questa precisione in "seconda" precisione quando i dati della cella vengono modificati, anche se non viene modificato nulla.
Per ricreare
Ovviamente elementi di questo potrebbero essere locali, macchina e / o specifici dell'utente, ma il sotto rappresenta la mia esperienza su 2 desktop e un laptop, sempre Excel 2010, UK.
- Inserire "19/04/2015 13: 26: 15,456" in una cella senza le virgolette (formato UK, quindi presumibilmente il 19/04/2015 negli Stati Uniti); premere Invio per accettare i contenuti.
- Excel decide di formattare questo come "mm: ss.0", rendendolo come "26: 15.5"
- Torna alla cella in questione senza modificarlo ancora
- si può vedere che ha "perso" la precisione nella barra della formula, mostrando "19/04/2015 13:26:15" senza frazioni di secondo. Tuttavia, la cella mostra ancora "26: 15.5", che indica con la coda .5 che la precisione è ancora effettivamente presente.
- CTRL-1 e cambia il formato da "mm: ss.0" a "gg / mm / aaaa hh: mm: ss.000". Ora viene visualizzato correttamente come "19/04/2015 13: 26: 15,456" nella cella (ma ancora senza il .456 nella barra della formula).
- Questo è il punto cruciale del problema; ora premi F2, quindi premi invio; cioè "modifica" la cella ma senza cambiare nulla. La precisione & lt; 1 secondo viene scartato e la cella ora mostra "19/04/2015 13:26:15. 000 "
Ciò significa che se modifico la parte della data di una cella (cioè cambio da aprile a maggio, o anticipo di un anno, ecc.) O semplicemente accidentalmente facendo doppio clic su di essa, butto via ogni volta la precisione decimale. C'è un modo per impedire che ciò accada?
Per dimostrare ulteriormente che il valore sta cambiando e non solo la formattazione, ho aggiunto una formula a una cella adiacente per rendere la data come decimale (10 dp), e il valore cambia solo immediatamente dopo il punto 4 sopra.