Clever-Excel-Forum

Normale Version: Nach Datum sortieren
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo zusammen,

ich habe wirklich sehr lang im Internet und auch hier im Forum gesucht, aber ich konnte mein Problem leider nicht lösen. Ich wäre wirklich sehr dankbar, wenn ich hier ein Lösungsvorschlag bekommen könnte!  

Folgende Situation:

Ich habe eine sehr große Sammlung elektronischer Musik. Also sehr viele Mittschnitte aus Clubs, Festival, Radio usw. Wir sprechen hier wirklich von mehreren Tausend "Sets". Diese sind alle wie folgt benannt:

A Guy Called Gerald @ Wax Da Jam Live Ibiza  26.07.2015

Also immer der "DJ @ Club und Datum"

Ich habe die ganzen Sets in einer Exceldatei und dort 27 Tabs, also von A bis Z und noch ein Tab für Zahlen. Ich würde nun gerne in den einzelnen Tabs nochmal nach Datum sortieren. Aber ich bekomme es einfach nicht hin, denn das Datum steht ja immer am Ende des Namens. Ich habe mal eine Beispieldatei mit angehängt. 

Diese Liste ist natürlich fortlaufen, also es kommen immer neue "Sets" dazu. Es wäre traumhaft, wenn ich dafür einen Lösungsvorschlag bekommen könnte, denn ich als Laie komme weiß wirklich nicht mehr weiter  Confused 

Im voraus schon mal vielen Dank!

Beste Grüße
Marco
Hallöchen,

du hast bestimmt den rechten Button zum Veröffentlichen vergessen. Links ist nur die Dateiauswahl, anschließend musst Du noch hochladen.

Du kannst das Datum mit Rechts(A1;10) auslesen wenn Dein Name in A1 steht und dann danach sortieren. Du hast damit zwar kein echtes Datum, bekommst aber den Hinweis - Alles was wie eine Zahl aussieht ...
Moin!
Ergänzend:
Wenn das Datum immer im Format TT.MM.JJJJ vorliegt (wie im einzigen Beispiel), dann nimm lieber
=1*RECHTS(A1;10)
Damit erhältst Du die serielle Zahl des Datums, nach der sich hervorragend sortieren lässt.

Bei unterschiedlichen Datumsformaten verweise ich mal wieder auf Google Sheets.
Dort würde so etwas funktionieren:
=index(split(A1;" ");;counta(split(A1;" ")))

Gruß Ralf
(13.11.2020, 22:46)schauan schrieb: [ -> ]Hallöchen,

du hast bestimmt den rechten Button zum Veröffentlichen vergessen. Links ist nur die Dateiauswahl, anschließend musst Du noch hochladen.

Du kannst das Datum mit Rechts(A1;10) auslesen wenn Dein Name in A1 steht  und dann danach sortieren. Du hast damit zwar kein echtes Datum, bekommst aber den Hinweis - Alles was wie eine Zahl aussieht ...

Guten Abend,

Nun habe ich den Anhang mit hochgeladen, Danke für den Hinweis und natürlich auch deine Antwort!


VG
Marco

(14.11.2020, 07:34)RPP63 schrieb: [ -> ]Moin!
Ergänzend:
Wenn das Datum immer im Format TT.MM.JJJJ vorliegt (wie im einzigen Beispiel), dann nimm lieber
=1*RECHTS(A1;10)
Damit erhältst Du die serielle Zahl des Datums, nach der sich hervorragend sortieren lässt.

Bei unterschiedlichen Datumsformaten verweise ich mal wieder auf Google Sheets.
Dort würde so etwas funktionieren:
=index(split(A1;" ");;counta(split(A1;" ")))

Gruß Ralf

Hallo Ralf,

ich habe deine Tipp direkt ausprobiert und es funktioniert! Du kannst du gar nicht vorstellen, wie happy du (ihr) mich damit macht  :23: :23: :23: :23: :23: Ich hätte nicht damit gerechnet, so schnell die Lösung für mein Problem zubekommen. Wirklich vielen Dank und noch einen schönen Sonntag Abend. Den werde ich ganz sicher auch haben... :15:

Viele Grüße
Marco
Hallo,

teste mal mit:

Code:
Sub Main
on error resume next
for s = 1 to sheets.count
    with sheets(s)
        for i = 1 to .cells(rows.count, 1).end(xlup).row
            rng = split(.cells(i, 1))
            for p = ubound(rng) to 0 step -1
                if len(rng(p)) = 10 then
                    .cells(i, 2) = cdate(rng(p))
                    exit for
                end if
            next p
        next i
    end with
next s
End Sub
(15.11.2020, 20:32)Fennek schrieb: [ -> ]Hallo,

teste mal mit:

Code:
Sub Main
on error resume next
for s = 1 to sheets.count
    with sheets(s)
        for i = 1 to .cells(rows.count, 1).end(xlup).row
            rng = split(.cells(i, 1))
            for p = ubound(rng) to 0 step -1
                if len(rng(p)) = 10 then
                    .cells(i, 2) = cdate(rng(p))
                    exit for
                end if
            next p
        next i
    end with
next s
End Sub

Guten Abend,

der Code funktioniert auch und noch eine weitere Alternative ;) Vielen Dank dafür! 


Beste Grüße

Marco