Ich habe ständig Probleme bei der Arbeit mit Daten in Excel, ich muss etwas falsch machen, aber ich verstehe nicht, was.
Ich habe eine Kalkulationstabelle, die von unserem Exchange-Server exportiert wurde und eine Spalte mit Datumsangaben enthält. Sie wurden im US-Format ausgegeben, obwohl ich im Vereinigten Königreich wohne.
Die betreffende Spalte sieht wie folgt aus
04/08/2012
04/09/2009
04/01/2010
04/21/2011
04/05/2012
08/30/2009
08/29/2010
08/28/2011
In Excel habe ich die Spalte markiert und Zellen formatieren...
gewählt. In diesem Dialogfeld habe ich das "Datum" markiert, "Englisch (Vereinigte Staaten)" als Gebietsschema ausgewählt und das passende Datumsformat aus der Liste gewählt. Ich drücke OK und versuche, die Daten nach dieser Spalte zu sortieren.
Im Dialogfeld "Sortieren" wähle ich diese Spalte aus, wähle "Sortieren nach Werten", aber die Reihenfolge gibt mir nur Optionen für A bis Z, nicht für älteste bis neueste, wie ich es erwarten würde.
Dadurch werden die Datumsdaten wiederum nach den ersten beiden Ziffern sortiert.
Ich bin mir bewusst, dass ich diese Daten in ISO umformatieren könnte, und dann würde die Sortierung von A nach Z funktionieren, aber ich sollte es nicht tun müssen, ich übersehe offensichtlich etwas. Was ist es denn?
EDIT: Ich habe das Kopfgeld durcheinander gebracht, aber das sollte an @r0berts Antwort gehen, sein erster Vorschlag von Text zu Spalten ohne Trennzeichen und die Auswahl von 'MDY' als Datentyp funktioniert. Wenn Sie außerdem eine Zeitangabe haben (z. B. "21.04.2015 18:34:22"), müssen Sie zunächst die Zeitdaten entfernen. Danach funktioniert die von @r0berts vorgeschlagene Methode jedoch gut.
Das Problem: Excel will Datumsangaben nicht als Datumsangaben erkennen, obwohl Sie mit "Zellen formatieren - Zahl - Benutzerdefiniert" ausdrücklich versuchen, dem Programm mitzuteilen, dass es sich um Datumsangaben handelt. Wie Sie wissen, speichert Excel, wenn es etwas als Datum erkannt hat, dieses als Zahl - wie z. B. "41004
", zeigt es aber gemäß dem von Ihnen angegebenen Format als Datum an. Um die Verwirrung noch zu vergrößern, kann es sein, dass Excel nur einen Teil Ihrer Datumsangaben konvertiert, wie z. B. 08/04/2009, aber andere, wie z. B. 07/28/2009, unkonvertiert lässt.
Lösung: Schritt 1 und dann 2
1) Wählen Sie die Datumsspalte aus. Wählen Sie unter Daten die Schaltfläche Text in Spalten. Lassen Sie auf dem ersten Bildschirm das Optionsfeld "begrenzt" aktiviert, und klicken Sie auf Next. Deaktivieren Sie eines der Begrenzungsfelder (alle Felder leer; keine Häkchen) und klicken Sie auf Weiter. Wählen Sie unter Spaltendatenformat Datum und im daneben stehenden Kombinationsfeld MDY aus, und klicken Sie auf Finish. Jetzt haben Sie zwar Datumswerte (d. h. Excel hat Ihre Werte als Datentyp "Datum" erkannt), aber die Formatierung ist wahrscheinlich immer noch das lokale Datum und nicht das gewünschte "mm/dd/yyyy".
2) Damit das gewünschte US-Datumsformat richtig angezeigt wird, müssen Sie zunächst die Spalte markieren (falls nicht markiert) und dann unter Zellenformat - Zahl die Option Datum UND das Gebietsschema auswählen: Englisch (US). Dadurch erhalten Sie ein Format wie "m/d/yy
". Dann können Sie Benutzerdefiniert auswählen und dort entweder "mm/dd/yyyy
" eingeben oder dies aus der Liste der benutzerdefinierten Zeichenfolgen auswählen.
Alternative: Verwenden Sie LibreOffice Calc. Nach dem Einfügen der Daten aus Patricks Beitrag wählen Sie Einfügen Spezial (Strg+Umschalt+V) und wählen Sie Unformatierter Text. Daraufhin wird das Dialogfeld "Text importieren" geöffnet. Der Zeichensatz bleibt Unicode, aber für die Sprache wählen Sie Englisch (USA); Sie sollten auch das Kästchen "Detect special numbers" ankreuzen. Ihre Datumsangaben erscheinen sofort im Standard-US-Format und sind datumsmäßig sortierbar. Wenn Sie das spezielle US-Format MM/TT/JJJJ wünschen, müssen Sie dies einmal über "Zellen formatieren" angeben - entweder vor oder nach dem Einfügen.
Man könnte sagen, Excel hätte das Datum erkennen müssen, sobald ich es über "Zellformat" angegeben habe, und ich könnte nicht mehr zustimmen. Leider ist es mir nur durch Schritt 1 oben gelungen, Excel dazu zu bringen, diese Textzeichenfolgen als Datumsangaben zu erkennen. Wenn Sie dies häufig tun, ist es natürlich sehr mühsam, und Sie könnten eine Visual Basic-Routine erstellen, die dies auf Knopfdruck für Sie erledigen würde.
Daten | Text in Spalten
Aktualisierung des führenden Hochkommas nach dem Einfügen: Sie können in der Formelleiste sehen, dass in der Zelle, in der das Datum nicht erkannt wird, ein führendes Hochkomma steht. Das bedeutet, dass sich in der Zelle, die als Zahl (oder Datum) formatiert ist, eine Textzeichenfolge befindet. Man könnte sagen, dass das führende Hochkomma die Tabellenkalkulation daran hindert, die Zahl zu erkennen. Sie müssen wissen, dass Sie in der Formelleiste danach suchen müssen, denn die Tabellenkalkulation zeigt einfach etwas an, das wie eine linksbündige Zahl aussieht. Um dieses Problem zu lösen, markieren Sie die Spalte, die Sie korrigieren möchten, wählen Sie im Menü "Daten | Text in Spalten" und klicken Sie auf "OK". Manchmal können Sie den Datentyp angeben, aber wenn Sie zuvor das Format der Spalte auf Ihren speziellen Datentyp eingestellt haben, brauchen Sie das nicht. Der Befehl ist eigentlich dafür gedacht, eine Textspalte mit Hilfe eines Trennzeichens in zwei oder mehr Spalten aufzuteilen, aber er funktioniert auch für dieses Problem hervorragend. Ich habe ihn in Libreoffice getestet, aber es gibt den gleichen Menüpunkt auch in Excel.
Es scheint, dass Excel Ihre Daten nicht als Datumsangaben erkennt, sondern als Text, daher erhalten Sie die Sortieroptionen als A bis Z. Wenn Sie es richtig machen, sollten Sie etwas wie dieses erhalten:
Daher ist es wichtig, sicherzustellen, dass Excel das Datum erkennt. Am einfachsten geht das mit der Tastenkombination CTRL+SHIFT+3.
Hier's, was ich mit Ihren Daten gemacht habe. Ich habe sie einfach aus Ihrem Beitrag oben kopiert und in Excel eingefügt. Dann habe ich die obige Verknüpfung angewendet und die gewünschte Sortieroption erhalten. Sehen Sie sich das Bild an.
Normalerweise erstelle ich nur eine zusätzliche Spalte für Sortier- oder Summenzwecke und verwende daher "Jahr(a1)&if len(month(a1))=1,),"")&Monat(a1)&Tag(a1)`.
Das Ergebnis ist "jjjjjmmtt", das sortiert werden kann. Die Verwendung von len(a1)
ermöglicht es, für die Monate 1-9 eine zusätzliche Null hinzuzufügen.