Ausgewählte Zellen in der Tabelle können in Excel 2013 nicht sortiert werden

0

Ich habe in Excel 2013 eine Tabelle erstellt, möchte aber nur ausgewählte Zellen sortieren. Der Tabellenbereich ist A1: I200, aber ich möchte nur A150: I200 sortieren. Ich habe versucht, die Zellen auszuwählen, mit der rechten Maustaste zu klicken, zu sortieren und die gesamte Tabelle zu sortieren. Gibt es eine Lösung dafür?

user275603
quelle

Antworten:

0

Das folgende Makro erledigt das. Sie heben zuerst die Auflistung der Tabelle auf, sortieren dann den ausgewählten Bereich und erstellen dann das ListObject erneut. Sie sollten den Sub anpassen, um die Details nach Bedarf zu optimieren.

Sub part_sort()
    Dim rng_sel As Range, rng_all As Range
    Dim lo_table As ListObject, lo_name As String
    Dim ws As Worksheet
    Set ws = ActiveSheet
    Set rng_sel = Selection
    Set lo_table = rng_sel.ListObject
    lo_name = lo_table.Name
    Set rng_all = lo_table.Range
    Debug.Print rng_all.Address
    lo_table.Unlist

    With ws.Sort
        .SortFields.Clear
        .SortFields.Add Key:=rng_sel.Columns(1), _
            SortOn:=xlSortOnValues, Order:=xlDescending, DataOption:=xlSortNormal
        .SetRange rng_sel
        .Header = xlGuess
        .MatchCase = False
        .Orientation = xlTopToBottom
        .SortMethod = xlPinYin
        .Apply
    End With

    Set lo_table = ws.ListObjects.Add(xlSrcRange, rng_all, , xlYes)
    lo_table.Name = lo_name
End Sub

PS: Diese Frage ist wahrscheinlich besser für Stack Overflow geeignet.

sancho.s
quelle
Ich habe die Codes kopiert und eingefügt und funktioniert perfekt, wie ich es will. Ich schätze die Hilfe.
user275603