Le prime date in Power Query sono scadute di un giorno - Suggerimenti per Excel

Power Query è la nuova, giovane e calda funzionalità di Excel. Ricorda che non è stato creato dal team di Excel. Il team di Power Query ha deciso che non saranno vincolati da un errore vecchio di decenni in VisiCalc. Ecco perché questo può causare problemi per te.

Per lo sfondo, le date in Excel vengono memorizzate come numero di serie. Se inserisci la data odierna - 30 marzo 2018 in Excel, ti mostreranno una forma della data, ma Excel memorizza 43189. Ciò significa che oggi sono 43189 giorni dal 1 ° gennaio 1900.

Significa anche che per arrivare all'appuntamento di domani, potresti usare =F3+1. Per trovare il numero di giorni tra le date, puoi sottrarre una data da un'altra. È un buon modo per consentire il calcolo della data.

Attenzione

Significa anche che non è possibile registrare facilmente le date del 1800. Questo è un male per geneaologi o contabili di aziende di 150 anni.

Ogni data è rappresentata da un numero di serie specifico

Il sistema è stato inventato da Dan Bricklin e Bob Frankston quando hanno creato VisiCalc nel 1978-1979. Ma Bob e Dan hanno commesso un errore. Riportiamo il nostro modello indietro nel tempo, a febbraio e marzo del 1900. La data associata al numero di serie 60 è il 29 febbraio 1900.

Le date molto presto sono sbagliate in Excel

I giorni bisestili risalgono a Giulio Cesare. Poiché la Terra impiega 365,242189 giorni per girare intorno al sole, avere un calendario di 365 giorni significa che le stagioni cambierebbero di 24 giorni ogni secolo. Giulio Cesare creò un piano per aggiungere un giorno intercalare in ogni anno divisibile per 4. Sarebbe stato perfetto se la Terra facesse il giro del Sole ogni 365,25 giorni. Ma quella piccola differenza da .25 a .242189 significava che nel corso di due millenni le stagioni erano ancora fuori. Papa Gregorio propose un sistema nel 1582 in cui c'erano tre regole:

  • Regola 1: un anno divisibile per 4 sarebbe un anno bisestile, eccetto:
  • Regola 2: un anno divisibile per 100 non sarebbe un anno bisestile, eccetto:
  • Regola 3: un anno divisibile per 400 sarebbe un anno bisestile.

Le regole furono proposte nel 1582 ma furono lente da adottare. Il Giappone non fu d'accordo fino al 1873. Bulgaria, Estonia, Russia, Grecia e Turchia passarono dal 1916 al 1927. La regola n. 2 è stata applicata solo nel 1700, 1800 e 1900. La regola n. 3 è stata applicata nel 1600 e nel 2000. Se stai leggendo questo articolo, probabilmente eri vivo per il 29 febbraio 2000, ma potresti non aver capito che era un'eccezione a un eccezione a un'eccezione. Ma nel 1978, questo non accadeva da 79 anni, quindi non era ampiamente conosciuto. VisiCalc ha commesso l'errore di includere il 29 febbraio 1900.

Non è un grosso problema, davvero. Chi torna a vedere se il 2 febbraio 1900 era un giovedì o un mercoledì (Excel dice che era un giovedì, ma in realtà era un mercoledì). E chi seguirà i crediti aperti dall'inizio del 1900? Ammettiamolo, se hai fatturato un venditore il 15 febbraio 1900 e non ti hanno ancora pagato, è tempo di cancellare il credito.

Per compatibilità, Mitch Kapor ha programmato lo stesso errore in Lotus 1-2-3.

Steve Jobs, non volendo programmare di proposito un errore, fece partire l'orologio del Macintosh il 1 ° gennaio 1904.

In Microsoft, Excel doveva essere compatibile con l'allora leader di mercato Lotus 1-2-3 e l'inesistente 29 febbraio 1900 fu introdotto in Excel e rimane lì fino ad oggi.

Ma gli architetti di Power Query non sono persone di fogli di calcolo. Non hanno statue di Bricklin e Frankston nel loro ufficio. Non conoscono questa storia. Decisero che le loro date sarebbero state il numero di giorni trascorsi dal 31 dicembre 1899. Ciò fa sì che le persone di Power Query si sentano un po 'superiori alle persone di Excel perché i giorni feriali riportati da Power Query per 60 giorni all'inizio del 1900 sono più corretti di in Excel.

Non c'è niente di cui preoccuparsi. Nessuno ha a che fare con le date di quei 60 giorni.

Ma qui c'è qualcosa di molto più comune. Considera questa tabella di numeri ben noti.

Henry Heinz pensava che il 57 suonasse come un numero fortunato.

Ti chiederò di "fare la cosa sbagliata" e di seguire accidentalmente questi passaggi:

  1. Seleziona la colonna N
  2. Premi Ctrl + Maiusc + 3 per formattare la colonna come una data
  3. Non notare che hai fatto nessuna di queste cose.

    Ops, i numeri sono date inavvertitamente
  4. Usa dati, ottieni e trasforma, da tabella o intervallo.
  5. Quando si arriva a Power Query, notare le date nella colonna del numero. Nella casella Passaggi applicati, eliminare il passaggio Formato modificato.

Quando i dati tornano in Excel, tutto è disattivato di 1. I cerchi non esistono più. Heinz ha 56 varietà invece di 57.

Mitch Kapor aveva ragione a sbagliarsi

Mi rendo conto che questo è il nostro ultimo venerdì in Excel Quaresima. Mi rendo conto che questo è un esempio artificioso e oscuro. Quali sono le probabilità che qualcuno formatta accidentalmente una colonna di numeri nell'intervallo 1-60 come date prima di passare a Power Query? Sembra basso, ma è successo.

Power Query è una funzionalità fantastica. Sono sicuro che gli architetti pensavano che nulla potesse andare storto se fossero stati più intelligenti di quelle persone che nel 1978 hanno commesso un errore. Ma miliardi di fogli di calcolo funzioneranno perché siamo tutti d'accordo nell'accettare l'errore, stai strappando un minuscolo buco nel tessuto di Excel.

Ogni venerdì, esamino un bug o un altro comportamento sospetto in Excel.

Excel pensiero del giorno

Ho chiesto ai miei amici di Excel Master per i loro consigli su Excel. Pensiero di oggi su cui riflettere:

"Ctrl + Maiusc + U alterna l'altezza della barra della formula"

Bob Umlas

Articoli interessanti...