Freigeben über

Liste nach neuer Eingabe automatisch sortieren

Anonym
2024-10-05T16:14:45+00:00

Ich habe eine Liste mit Spalten "Datum" und "Zeit" und weitere. Die Liste wächst ständig. Nun möchte ich die Spalte Datum und Zeit nach der Eingabe einer neuen Zeile automatisch neu aufsteigend sortiert haben.

Microsoft 365 und Office | Excel | Für Zuhause | Windows

Gesperrte Frage. Diese Frage wurde aus der Microsoft-Support-Community migriert. Sie können darüber abstimmen, ob sie hilfreich ist, aber Sie können keine Kommentare oder Antworten hinzufügen oder der Frage folgen.

0 Kommentare Keine Kommentare

1 Antwort

Sortieren nach: Am hilfreichsten
  1. Anonym
    2024-10-06T04:14:21+00:00

    Diese Antwort wurde automatisch übersetzt. Daher können grammatikalische Fehler oder seltsame Formulierungen vorkommen.

    Hallo, Niesenfux.

    Vielen Dank, dass Sie Ihre Bedenken in der Microsoft Community geäußert haben.

    Um Ihre Excel-Tabelle automatisch nach "Datum" und "Uhrzeit" zu sortieren, wenn neue Daten hinzugefügt werden, können Sie dies mit Excel VBA (Visual Basic for Applications) erreichen. Dadurch wird ein automatischer Sortiervorgang ausgelöst, sobald eine neue Zeile eingegeben wird.

    Hier sind die Schritte:

    Schritt-für-Schritt-Anleitung:

    1. Öffnen Sie die Excel-Arbeitsmappe: Öffnen Sie die Arbeitsmappe, in der sich Ihre Liste befindet.
    2. Öffnen Sie den VBA-Editor: Drücken Sie ALT+F11, um den VBA-Editor (Visual Basic für Applikationen) zu öffnen.
    3. Greifen Sie auf den Code des Arbeitsblatts zu:
      • Suchen Sie im VBA-Editor das Projekt-Explorer-Fenster der Arbeitsmappe (wenn es nicht sichtbar ist, drücken Sie STRG+R).
      • Suchen Sie Ihr Arbeitsblatt im Abschnitt VBAProject, wo sich Ihre Liste befindet.
      • Doppelklicken Sie auf das Blatt (z. B. Blatt1), in dem sich die Daten befinden. Dadurch wird das Codefenster für das jeweilige Blatt geöffnet.
    4. Sortiercode einfügen: Kopieren Sie den folgenden VBA-Code, und fügen Sie ihn in das Codefenster ein:
    Private Sub Worksheet_Change(ByVal Target As Range)<br><br><br><br>     ' Define the range of your data, adjust it according to your data layout<br><br><br><br>     Dim sortRange As Range<br><br><br><br>     Set sortRange = Me.Range("A1:D1000") ' Adjust this to fit your data range<br><br><br><br>    <br><br><br><br>     ' Check if changes are made within the Date or Time column (A and B)<br><br><br><br>     If Not Intersect(Target, Me.Columns("A:B")) Is Nothing Then<br><br><br><br>         ' Sort based on Date (column A) and Time (column B)<br><br><br><br>         sortRange.Sort Key1:=Me.Range("A2"), Order1:=xlAscending, _<br><br><br><br>                        Key2:=Me.Range("B2"), Order2:=xlAscending, Header:=xlYes<br><br><br><br>     End If<br><br><br><br> End Sub
        **→***Einige Erläuterungen zu diesem Code, wenn Sie ihn ändern müssen:*
    
    • Ziel: Bezieht sich auf den Bereich, in dem Daten geändert wurden.
    • Me.Columns("A:B"): Passen Sie den Spaltenbezug für Datum (in Spalte A angenommen) und Uhrzeit (in Spalte B angenommen) an. Ändern Sie diese, wenn sich Ihre Daten in verschiedenen Spalten befinden.
    • sortRange: Gibt den Bereich der Daten an, die sortiert werden sollen. Passen Sie diesen Bereich so an, dass er Ihr gesamtes Dataset abdeckt, einschließlich anderer Spalten, falls erforderlich.
    • Schlüssel1 und Schlüssel2: Diese stellen die Spalten dar, nach denen sortiert werden soll: Der erste Schlüssel steht für das Datum und der zweite für die Zeit.
    1. Drücken Sie Strg + S, um die Arbeitsmappe als Arbeitsmappe mit Makros (XLSM-Datei ) zu speichern.
    2. Testen Sie den Code:
      • Kehren Sie zum Arbeitsblatt zurück, geben Sie neue Daten in eine neue Zeile ein, oder ändern Sie die Werte für Datum/Uhrzeit.
      • Sobald Sie Daten eingeben, sollte die Tabelle automatisch nach Datum und Uhrzeit in aufsteigender Reihenfolge sortiert werden.

    Stellen Sie sicher, dass die Spalten für Datum und Uhrzeit ordnungsgemäß als Datums- bzw. Uhrzeittypen formatiert sind . Möglicherweise müssen Sie den Bereich (A1:D1000) basierend auf Ihrem tatsächlichen Datenlayout anpassen. Dieses VBA-Skript wird jedes Mal ausgelöst, wenn Daten in den Spalten "Datum*" oder* "Uhrzeit" geändert werden, und stellt sicher, dass Ihre Liste nach jedem neuen Eintrag automatisch sortiert wird.

    Fühlen Sie sich frei, mich über den Fortschritt der Dinge zu informieren, nachdem Sie die oben genannten Schritte abgeschlossen haben. Sollten Sie Fragen haben oder Klärungsbedarf haben, zögern Sie nicht, sich an mich zu wenden. Ich möchte mein Möglichstes tun, um Ihnen zu helfen.

    Alles Gute

    Hannah.Z- MSFT |Microsoft Community Support-Spezialist

    Eine Person fand diese Antwort hilfreich.
    0 Kommentare Keine Kommentare