Frühe Daten in Power Query sind um einen Tag verschoben - Excel-Tipps

Power Query ist die heiße, junge, neue Funktion in Excel. Denken Sie daran, dass es nicht vom Excel-Team erstellt wurde. Das Power Query-Team entschied, dass sie nicht an einen jahrzehntelangen Fehler in VisiCalc gebunden sein werden. Hier ist, warum das Probleme für Sie verursachen kann.

Als Hintergrund werden Daten in Excel als Seriennummer gespeichert. Wenn Sie das heutige Datum - den 30. März 2018 - in Excel eingeben, wird Ihnen eine Form des Datums angezeigt, in Excel werden jedoch 43189 gespeichert. Dies bedeutet, dass heute 43189 Tage seit dem 1. Januar 1900 vergangen sind.

Es bedeutet auch, dass Sie verwenden können, um zum morgigen Datum zu gelangen =F3+1. Um die Anzahl der Tage zwischen den Daten zu ermitteln, können Sie ein Datum von einem anderen subtrahieren. Dies ist eine gute Möglichkeit, Datumsberechnungen zuzulassen.

Vorsicht

Es bedeutet auch, dass Sie Daten aus dem 19. Jahrhundert nicht einfach aufzeichnen können. Dies ist schlecht für Geneaologen oder Buchhalter in 150 Jahre alten Unternehmen.

Jedes Datum wird durch eine bestimmte Seriennummer dargestellt

Das System wurde von Dan Bricklin und Bob Frankston erfunden, als sie 1978-1979 VisiCalc entwickelten. Aber Bob und Dan haben einen Fehler gemacht. Lassen Sie uns unser Modell in die Vergangenheit zurückverfolgen, bis Februar und März 1900. Das mit der Seriennummer 60 verbundene Datum ist der 29. Februar 1900.

Sehr frühe Daten sind in Excel falsch

Die Schalttage gehen auf Julius Caesar zurück. Da die Erde 365,242189 Tage benötigt, um die Sonne zu umrunden, bedeutet ein Kalender von 365 Tagen, dass sich die Jahreszeiten jedes Jahrhundert um 24 Tage verschieben würden. Julius Caesar erstellte einen Plan, in jedem Jahr einen Schalttag hinzuzufügen, der durch 4 teilbar ist. Das wäre perfekt gewesen, wenn die Erde alle 365,25 Tage um die Sonne gegangen wäre. Aber dieser winzige Unterschied von 0,25 zu 0,242189 bedeutete, dass im Laufe von zwei Jahrtausenden die Jahreszeiten immer noch aus waren. Papst Gregor schlug 1582 ein System vor, in dem es drei Regeln gab:

  • Regel 1: Ein durch 4 teilbares Jahr wäre ein Schaltjahr, außer:
  • Regel 2: Ein durch 100 teilbares Jahr wäre kein Schaltjahr, außer:
  • Regel 3: Ein durch 400 teilbares Jahr wäre ein Schaltjahr.

Die Regeln wurden 1582 vorgeschlagen, aber nur langsam verabschiedet. Japan stimmte erst 1873 zu. Bulgarien, Estland, Russland, Griechenland und die Türkei wechselten von 1916 bis 1927. Regel Nr. 2 ist erst in den Jahren 1700, 1800 und 1900 aufgetreten. Regel Nr. 3 ist in den Jahren 1600 und 2000 aufgetreten. Wenn Sie dies lesen, waren Sie wahrscheinlich am 29. Februar 2000 am Leben, aber Sie haben möglicherweise nicht bemerkt, dass es sich um eine Ausnahme von einer handelt Ausnahme zu einer Ausnahme. Aber 1978 war dies 79 Jahre lang nicht geschehen, daher war es nicht allgemein bekannt. VisiCalc machte den Fehler, den 29. Februar 1900 einzubeziehen.

Es ist wirklich keine große Sache. Wer immer zurückkehrt, um zu sehen, ob der 2. Februar 1900 ein Donnerstag oder ein Mittwoch war (Excel sagt, es war ein Donnerstag, aber es war wirklich ein Mittwoch). Und wer wird offene Forderungen ab Anfang 1900 verfolgen? Seien wir ehrlich, wenn Sie einem Lieferanten am 15. Februar 1900 eine Rechnung gestellt haben und dieser Sie noch nicht bezahlt hat, ist es Zeit, die Forderung abzuschreiben.

Aus Kompatibilitätsgründen programmierte Mitch Kapor denselben Fehler in Lotus 1-2-3.

Steve Jobs, der nicht absichtlich einen Fehler programmieren wollte, ließ die Macintosh-Uhr am 1. Januar 1904 starten.

Bei Microsoft musste Excel mit dem damaligen Marktführer Lotus 1-2-3 kompatibel sein, und der nicht existierende 29. Februar 1900 wurde in Excel eingeführt und bleibt dort bis heute.

Die Power Query-Architekten sind jedoch keine Tabellenkalkulationsmitarbeiter. Sie haben keine Statuen von Bricklin und Frankston in ihrem Büro. Sie kennen diese Geschichte nicht. Sie trafen die Entscheidung, dass ihre Daten die Anzahl der seit dem 31. Dezember 1899 verstrichenen Tage sein würden. Dadurch fühlen sich Power Query-Mitarbeiter Excel-Mitarbeitern ein wenig überlegen, da die von Power Query für 60 Tage Anfang 1900 gemeldeten Wochentage korrekter sind als in Excel.

Dies ist kein Grund zur Sorge. Niemand hat mit Daten aus diesen 60 Tagen zu tun.

Aber hier ist etwas weitaus häufiger. Betrachten Sie diese Tabelle mit bekannten Zahlen.

Henry Heinz dachte, 57 klang wie eine Glückszahl.

Ich werde Sie bitten, "das Falsche zu tun" und versehentlich die folgenden Schritte auszuführen:

  1. Wählen Sie Spalte N.
  2. Drücken Sie Strg + Umschalt + 3, um die Spalte als Datum zu formatieren
  3. Beachten Sie nicht, dass Sie eines dieser Dinge getan haben.

    Whoops - die Zahlen sind versehentlich Daten
  4. Verwenden Sie Daten, Get & Transform, From Table oder Range.
  5. Wenn Sie zu Power Query gelangen, beachten Sie die Daten in der Zahlenspalte. Löschen Sie im Feld Angewandte Schritte den Schritt Geändertes Format.

Wenn die Daten zu Excel zurückkehren, ist alles um 1 verschoben. Kreise existieren nicht mehr. Heinz hat 56 Sorten anstelle von 57.

Mitch Kapor hatte Recht, sich zu irren

Mir ist klar, dass dies unser letzter Freitag in der Excel-Fastenzeit ist. Mir ist klar, dass dies ein erfundenes und obskures Beispiel ist. Wie hoch ist die Wahrscheinlichkeit, dass jemand versehentlich eine Zahlenspalte im Bereich von 1 bis 60 als Datum formatiert, bevor er zu Power Query wechselt? Es scheint niedrig, aber es ist passiert.

Power Query ist eine großartige Funktion. Ich bin sicher, die Architekten dachten, nichts könnte schief gehen, wenn sie schlauer wären als die Leute von 1978, die einen Fehler gemacht haben. Aber werden Milliarden von Tabellen funktionieren, weil wir uns alle einig sind, den Fehler zu akzeptieren? Sie reißen ein kleines Loch in die Struktur von Excel.

Jeden Freitag untersuche ich einen Fehler oder ein anderes fischartiges Verhalten in Excel.

Excel-Gedanke des Tages

Ich habe meine Excel Master-Freunde um Rat zu Excel gebeten. Der heutige Gedanke zum Nachdenken:

"Strg + Umschalt + U schaltet die Höhe der Formelleiste um"

Bob Umlas

Interessante Beiträge...