Ich habe eine Excel-Datei mit mehreren Zeilen in denen unterschiedlich viele Werte stehen und möchte diese von links nach rechts für jede Zeile einzeln aufsteigend sortieren.
Das ganze in Excel zu machen ist recht einfach mit einem kleinen Makro lösbar. Unter Daten – Sortieren – Optionen kann man zwar einstellen, dass man die Zeile sortieren möchte und nicht die Spalte, aber dann sortiert Excel die Zeilen nach dem “Vorbild” der ersten Zeile und dass ist nicht gewünscht.
Folgendes Makro erledigt die Aufgabe jedoch, indem es jede Zeile einzeln sortiert. Dabei kann über die Konstanten gesteuert werden, welche Spalten die Sortierung umfassen soll.
Option Explicit
' sorts cells in all rows of current worksheet ascending from left to right
Sub horizontalSort()
Dim i, lastRow As Integer
Const firstColumn As Integer = 1
Const lastColumn As Integer = 10
' find last row
lastRow = Cells(1, 1).End(xlDown).Row
' sort cells in each row ascending from left to right
For i = 1 To lastRow
Range(Cells(i, firstColumn), Cells(i, lastColumn)).Select
Selection.Sort Key1:=Range("A" & i), _
Order1:=xlAscending, Header:=xlNo, _
OrderCustom:=1, MatchCase:=False, _
Orientation:=xlLeftToRight, _
DataOption1:=xlSortTextAsNumbers
Next i
End Sub
Vielen Dank!
habe meines erachtens genau wie beschrieben unter makros die obige seite kopiert in makros eingefügt und …. funktioniert irgendwie nicht sicher habe ich einen Fehler gemachr leider weis ich nicht welchen, meinet du du könntest mir weiterhelfen danke
gruss
robert
Hallo Stefan,
vielen Dank für diese Lösung. Ich habe den Code etwas angepasst, so dass er vor dem Speichern der Tabelle ausgeführt wird.
Meine bestehende Tabelle mit xxx Zeilen wird also beim ersten Speichern nach einfügen des Codes komplett durch sortiert.
Danach habe ich den Code dahin gehend geändert, dass nun nur noch jeweils die letzte Zeile vor dem Speichern sortiert wird, da ich pro Tag nur eine Zeile dazu schreibe. Das spart Zeit, weil ja nur eine und nicht >100 Zeilen sortiert werden müssen.
Gruß, Sebastian
Pingback:Horizontal sort method does not work with as table formated worksheets - Zax News