it-swarm.com.de

VBA Excel-Sortierbereich nach bestimmter Spalte

Ich habe eine Tabelle, die beliebig viele Zeilen enthalten kann:

enter image description here

Wie gesagt, es kann 1 oder ∞ Zeilen enthalten.

Ich möchte den Bereich A3: D∞ nach der Datumszelle in Spalte B sortieren. Wie kann ich das tun?

Das Problem ist, dass ich nicht weiß, wie ich von A3 bis zur letzten Zeile auswählen soll.

Ich denke, dass eine Schleife in die letzte Zeile keine richtige Methode ist.

Ich habe dies so weit, dass es richtig aussieht, aber der Bereich ist hartcodiert. Wie entferne ich die Hardcodierung des Bereichs?

Range("A3:D8").Sort key1:=Range("B3:B8"), _
order1:=xlAscending, Header:=xlNo
34
Cheese

Versuchen Sie diesen Code:

Dim lastrow As Long
lastrow = Cells(Rows.Count, 2).End(xlUp).Row
Range("A3:D" & lastrow).Sort key1:=Range("B3:B" & lastrow), _
   order1:=xlAscending, Header:=xlNo
80
Dmitry Pavliv

Oder dieses:

Range("A2", Range("D" & Rows.Count).End(xlUp).Address).Sort Key1:=[b3], _
    Order1:=xlAscending, Header:=xlYes
13
L42