Supportnet / Forum / Tabellenkalkulation
Sortieren nach Uhrzeiten in Excel
Frage
Hallo alle zusammen!
Kann mir jemand helfen?
In Spalte B werden Anfangszeiten und in daneben in Spalte C wenn vorhanden die Endzeiten geschrieben. Nun sollen alle Zeilen, in denen Endzeiten stehen über eine Schaltfläche gelöscht werden. Gleichzeitig sollen die übriggebliebenen Zeilen automatisch sortiert werden und zwar immer von O5:00 Uhr bis 05: Uhr des nächsten Tages.
Läßt sich da was machen?
Antwort 1 von Hajo_Zi
Hallo Petra,
lese mal FAQ, führe ein Beitrag nicht gleichzeitig in 2 Foren.
Gruß Hajo
lese mal FAQ, führe ein Beitrag nicht gleichzeitig in 2 Foren.
Gruß Hajo
Antwort 2 von Hajo_Zi
Hallo Petra,
ich war wohl nicht ganz auf. Das war nicht der Falll mit 2 Foren.
Problem 1 benutze Autofilter <>"" und 2 einfach sortieren falls Zeit und Datum in einer Zelle. Nur nach der Spalte Ansonsten erst Datum und dann Zeit. 2 Bedingungen sind bei jeder Excelversion möglich.
Gruß Hajo
ich war wohl nicht ganz auf. Das war nicht der Falll mit 2 Foren.
Problem 1 benutze Autofilter <>"" und 2 einfach sortieren falls Zeit und Datum in einer Zelle. Nur nach der Spalte Ansonsten erst Datum und dann Zeit. 2 Bedingungen sind bei jeder Excelversion möglich.
Gruß Hajo
Antwort 3 von Petra0403
Danke Hajo für die schnelle Antwort.
Leider ist das noch nicht meine Lösung. Autofilter sortiert ja nur, löscht aber nicht die Zeilen in denen die Endzeiten stehen und außerdem sortiert er nicht von 05:00 Uhr bis 05:00 Uhr. (also 23:00 ist vor 1:00 Uhr). Vielleicht kann ich auch noch einen Wunsch einfügen: wenn in der Spalte B mit den Anfangszeiten mal ein Datum steht (ohne Uhrzeit), dann soll so sortiert werden, dass oben die Zeilen mit dem Datum stehen und darunter die mit den Uhrzeiten (beides absteigend sortiert).
Am liebsten wäre mir eine VBA-Lösung über einen Button.
Hajo, kannst du mir noch mal helfen.
Danke Petra
Leider ist das noch nicht meine Lösung. Autofilter sortiert ja nur, löscht aber nicht die Zeilen in denen die Endzeiten stehen und außerdem sortiert er nicht von 05:00 Uhr bis 05:00 Uhr. (also 23:00 ist vor 1:00 Uhr). Vielleicht kann ich auch noch einen Wunsch einfügen: wenn in der Spalte B mit den Anfangszeiten mal ein Datum steht (ohne Uhrzeit), dann soll so sortiert werden, dass oben die Zeilen mit dem Datum stehen und darunter die mit den Uhrzeiten (beides absteigend sortiert).
Am liebsten wäre mir eine VBA-Lösung über einen Button.
Hajo, kannst du mir noch mal helfen.
Danke Petra
Antwort 4 von Hajo_Zi
Hallo Petra
4:00 am 15.05.08 soll also beim 16.05.08 einsortiert werden? Dazu habe ich kerine Lösung.
Nach Autofilter kann man die Tabelle kopieren, die ausgeblendeten Zeilen werden nicht kopiert.
Excel hat auch einen Makrorecorder, mit dem man die Befehle aufzeichnen kann. Diesen Code kann oder sollte man noch ein wenig bearbeiten.
Gruß Hajo
4:00 am 15.05.08 soll also beim 16.05.08 einsortiert werden? Dazu habe ich kerine Lösung.
Nach Autofilter kann man die Tabelle kopieren, die ausgeblendeten Zeilen werden nicht kopiert.
Excel hat auch einen Makrorecorder, mit dem man die Befehle aufzeichnen kann. Diesen Code kann oder sollte man noch ein wenig bearbeiten.
Gruß Hajo
Antwort 5 von Petra0403
Ich hab dir noch gar keinen Guten Morgen gewünscht!
Danke, dass du mir hilfst.
Die Sortierreihenfolge soll sein:
1. 14.05.
2. 15.05.
3. 23:00
4. 01:00
Mit Makrorecorder wüßte ich nicht, wie ich das anstellen soll. Die Anzahl der Zeilen mit Datum sind ja immer unterschiedlich.
Gruß Petra
Danke, dass du mir hilfst.
Die Sortierreihenfolge soll sein:
1. 14.05.
2. 15.05.
3. 23:00
4. 01:00
Mit Makrorecorder wüßte ich nicht, wie ich das anstellen soll. Die Anzahl der Zeilen mit Datum sind ja immer unterschiedlich.
Gruß Petra
Antwort 6 von Hajo_Zi
Hallo Petra,
eine Datei sagt mancmal mehr als tausend Worte. Ich hätte vermutet in einer Spalte steht das Datum und in einer anderen die Uhrzeit. Bei der dargestellten Variante ist nicht klar zu welchen Tag gehört 23:00? 14.05 würde als 14.05 00:00 interpretiert.
Gruß Hajo
eine Datei sagt mancmal mehr als tausend Worte. Ich hätte vermutet in einer Spalte steht das Datum und in einer anderen die Uhrzeit. Bei der dargestellten Variante ist nicht klar zu welchen Tag gehört 23:00? 14.05 würde als 14.05 00:00 interpretiert.
Gruß Hajo
Antwort 7 von Petra0403
Entschuldige, war mal eine Weile nicht da.
Das Problem ist die Sortierreihenfolge soll sein:
A B C
1. 14.05.
2. 15.05.
3. 23:00
4. 01:00
und zwar alles in einer Spalte! Immer wenn eine Sache abgearbeitet ist erhält sie eine Endzeit in der Spalte C. Die Zeilen mit Endzeit werden ja gelöscht und aus den übrigebliebenen Zeiten in Spalte B werden nach 05:00 Uhr des laufenden Tages die Uhrzeiten zu Datümern (des Tages davor) gemacht. Diese bleiben dann solange stehen, bis sie eine Endzeit in Spalte C erhalten.
Die Zeilen mit Datum in B sind also die Sachen, welche älter als einen Tag sind und sollen nach der Sortierung immer als erste in der Tabelle Spalte B stehen, darunter dann die Zeilen mit den Uhrzeiten des laufenden Tages bis wieder 05:00 Uhr des nächsten Tages.
Ich bin sehr froh, dass du dich mit meinem Problem beschäftigst..
Danke!
Das Problem ist die Sortierreihenfolge soll sein:
A B C
1. 14.05.
2. 15.05.
3. 23:00
4. 01:00
und zwar alles in einer Spalte! Immer wenn eine Sache abgearbeitet ist erhält sie eine Endzeit in der Spalte C. Die Zeilen mit Endzeit werden ja gelöscht und aus den übrigebliebenen Zeiten in Spalte B werden nach 05:00 Uhr des laufenden Tages die Uhrzeiten zu Datümern (des Tages davor) gemacht. Diese bleiben dann solange stehen, bis sie eine Endzeit in Spalte C erhalten.
Die Zeilen mit Datum in B sind also die Sachen, welche älter als einen Tag sind und sollen nach der Sortierung immer als erste in der Tabelle Spalte B stehen, darunter dann die Zeilen mit den Uhrzeiten des laufenden Tages bis wieder 05:00 Uhr des nächsten Tages.
Ich bin sehr froh, dass du dich mit meinem Problem beschäftigst..
Danke!
Antwort 8 von Petra0403
Hab gerade gemerkt, dass sich meine Tabelle gar nicht so zeigt, wie ich das wollte. Also hier noch einmal:
A ---------B-------------C--------------D--------------E-------------F
--------Anfang------ Ende
1.---- 14.05.
2.---- 15.05.
3.---- 23:00
4.---- 01:00
So soll die Tabelle aussehen, wenn die Zeilen mit Endzeit in Spalte C gelöscht sind.
Gruß Petra
A ---------B-------------C--------------D--------------E-------------F
--------Anfang------ Ende
1.---- 14.05.
2.---- 15.05.
3.---- 23:00
4.---- 01:00
So soll die Tabelle aussehen, wenn die Zeilen mit Endzeit in Spalte C gelöscht sind.
Gruß Petra
Antwort 9 von achim_13086
Hallo Petra,
zuerst möchte ich mich bei Hajo entschuldigen, dass ich mich mit meinen Anmerkungen so einfach dazwischen schiebe.
Ich würde die Tabelle folgendermaßen aufbauen:
Spalte A = Datum
Spalte B = Anfang
Spalte C = Ende
Spalte D = Zeitdifferenz
Spalte C mit bedingter Formatierung die leeren Felder markiert.
Jetzt noch etwas grundsätzliches: Excel sortiert die Zellen aus deinem Muster wiefolgt:
Zuerst 01:00, dann 23:00, dann 14.05. und dann 15.05.
Warum? Datums- und Zeitwerte werden von Excel als serielle Zahlen behandelt. Somit sieht dein Beispiel mit seriellen Zahlen so aus:
1. --- 14.05.2008 = 39582
2. --- 15.05.2008 = 39583
3. --- 23:00 = 0,9583333
4. --- 01:00 = 0,0416667
Dann die Spalte C mit einem Klick auf den Buchstaben C markieren. Unter bedingter Formatierung kann mit Zellwert gleich 0 mit der Schaltfläche Format unter Muster die Farbe eingerichtet werden.
Jetzt müßte die ganze Spalte farblich markiert sein. Sobald ein Wert eingegeben wird, wird die Hintergrundfarbe der Eingabezelle wieder weiß.
Sortieren würde ich nach Spalte A = Datum und Spalte B = Anfang.
In einer zweiten Tabelle würde ich die Zeilen übertragen, die in der Spalte C keinen Eintrag haben.
Hier kommt Hajo wieder ins Spiel. Er ist für Makros zur Lösung dieses Ansatz predistiniert.
Ich hoffe, ich konnte einige Anregungen zur Lösung beitragen.
Gruß
Joachim
zuerst möchte ich mich bei Hajo entschuldigen, dass ich mich mit meinen Anmerkungen so einfach dazwischen schiebe.
Ich würde die Tabelle folgendermaßen aufbauen:
Spalte A = Datum
Spalte B = Anfang
Spalte C = Ende
Spalte D = Zeitdifferenz
Spalte C mit bedingter Formatierung die leeren Felder markiert.
Jetzt noch etwas grundsätzliches: Excel sortiert die Zellen aus deinem Muster wiefolgt:
Zuerst 01:00, dann 23:00, dann 14.05. und dann 15.05.
Warum? Datums- und Zeitwerte werden von Excel als serielle Zahlen behandelt. Somit sieht dein Beispiel mit seriellen Zahlen so aus:
1. --- 14.05.2008 = 39582
2. --- 15.05.2008 = 39583
3. --- 23:00 = 0,9583333
4. --- 01:00 = 0,0416667
Dann die Spalte C mit einem Klick auf den Buchstaben C markieren. Unter bedingter Formatierung kann mit Zellwert gleich 0 mit der Schaltfläche Format unter Muster die Farbe eingerichtet werden.
Jetzt müßte die ganze Spalte farblich markiert sein. Sobald ein Wert eingegeben wird, wird die Hintergrundfarbe der Eingabezelle wieder weiß.
Sortieren würde ich nach Spalte A = Datum und Spalte B = Anfang.
In einer zweiten Tabelle würde ich die Zeilen übertragen, die in der Spalte C keinen Eintrag haben.
Hier kommt Hajo wieder ins Spiel. Er ist für Makros zur Lösung dieses Ansatz predistiniert.
Ich hoffe, ich konnte einige Anregungen zur Lösung beitragen.
Gruß
Joachim
Antwort 10 von Petra0403
Danke Joachim!
So richtig hilft mir deine Lösung noch nicht weiter. Es sollten schon in der Spalte B zuerst die Datümer (dabei ist die Uhrzeit ohne Bedeutung!) und danach die Uhrzeiten stehen.
Zeile mit Datum heißt eben nur: betreffender Eintrag ist noch nicht abgearbeitet und soll nur noch solange in der Tabelle stehen, bis eine Endzeit in C eingetragen wird (Eintrag soll dann am nächsten Tag um 05:30 Uhr per Button gelöscht werden).
Umsonst waren deine Bemühungen nicht, ich hab mir ein paar Anregungen für andere Projekte rausgenommen.
Ich muss schon sagen ich fühle mich richtig wohl in diesem Forum.
Also noch mal vielen Dank euch beiden.
So richtig hilft mir deine Lösung noch nicht weiter. Es sollten schon in der Spalte B zuerst die Datümer (dabei ist die Uhrzeit ohne Bedeutung!) und danach die Uhrzeiten stehen.
Zeile mit Datum heißt eben nur: betreffender Eintrag ist noch nicht abgearbeitet und soll nur noch solange in der Tabelle stehen, bis eine Endzeit in C eingetragen wird (Eintrag soll dann am nächsten Tag um 05:30 Uhr per Button gelöscht werden).
Umsonst waren deine Bemühungen nicht, ich hab mir ein paar Anregungen für andere Projekte rausgenommen.
Ich muss schon sagen ich fühle mich richtig wohl in diesem Forum.
Also noch mal vielen Dank euch beiden.