
Kann ich Excel (ggf. mit Skripten) so konfigurieren, dass eine Tabelle bei jeder Aktualisierung eines Eintrags automatisch neu sortiert wird?
Antwort1
Eine schnelle Google-Suche ergab Folgendes:
Private Sub Worksheet_Change(ByVal Target As Range)
If Not (Application.Intersect(Worksheets(1).Range("E9:F32"), Target) Is Nothing) Then
DoSort
End If
End Sub
Private Sub DoSort()
Worksheets(3).Range("E3:M7").Sort Key1:=Worksheets(3).Range("M3"), Order1:=xlDescending, _
Key2:=Worksheets(3).Range("L3"), Order2:=xlDescending, Header:=xlYes
Worksheets(3).Range("E10:M14").Sort Key1:=Worksheets(3).Range("M10"), Order1:=xlDescending, _
Key2:=Worksheets(3).Range("L10"), Order2:=xlDescending, Header:=xlYes
Worksheets(3).Range("E17:M21").Sort Key1:=Worksheets(3).Range("M17"), Order1:=xlDescending, _
Key2:=Worksheets(3).Range("L17"), Order2:=xlDescending, Header:=xlYes
Worksheets(3).Range("E24:M28").Sort Key1:=Worksheets(3).Range("M24"), Order1:=xlDescending, _
Key2:=Worksheets(3).Range("L24"), Order2:=xlDescending, Header:=xlYes
End Sub
Ich habe nicht viel Ahnung von VBA, aber ich werde versuchen zu erklären, wie man das anpasst. Wenn das nicht klappt, lasst es mich wissen. ;)
Mit dem ersten Sub legen Sie fest, wann die Funktion ausgelöst wird. Die Zeile oben besagt, dass DoSort gestartet wird, wenn sich in Arbeitsblatt 1 in den Zellen E9 bis F32 etwas ändert.
DoSort sortiert einige Bereiche und kann auch mit Ihren eigenen Datenbereichen angepasst werden. Löschen Sie einfach die nicht benötigten Zeilen und ändern Sie Arbeitsblattnummern und Datenbereiche.