32 Aufrufe
Gefragt in Tabellenkalkulation von bischoff2000 Einsteiger_in (59 Punkte)
es wird sortiert von 50 auf 1 ich möchte aber das oben  der 1 steht und der letzte auf 50 ..was muss ich ändern komme nicht drauf...danke für hihre hilfe.

mfg rolf

Private Sub Worksheet_Change(ByVal Target As Range)
        ' Überprüfen, ob die Änderung in der relevanten Spalte stattgefunden hat
        If Not Intersect(Target, Me.Range("C:C")) Is Nothing Then ' Beispiel: A-Spalte
            ' Tabelle sortieren
            Me.ListObjects(1).Sort.SortFields.Clear
            Me.ListObjects(1).Sort.SortFields.Add2 Key:=Range("C6"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
            With Me.ListObjects(1).Sort
                .Header = xlYes ' Wenn die Tabelle Überschriften hat
                .MatchCase = False
                .Orientation = xlTopToBottom
                .SortMethod = xlPinYin
                .Apply
            End With
        End If
    End Sub

1 Antwort

0 Punkte
Beantwortet von beverly_ Experte (3.6k Punkte)
Hi,

der Code ist korrekt und es wird auch tatsächlich aufsteigend sortiert (niedrigster Wert zuerst). Wenn das bei dir nicht der Fall ist, solltest du deine Mappe mal hochladen,

Bis später, Karin
...