Live-Forum - Die aktuellen Beiträge
Datum
Titel
17.04.2024 18:57:33
17.04.2024 16:56:58
Anzeige
Archiv - Navigation
1828to1832
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Bereich sortieren

Bereich sortieren
27.04.2021 21:12:54
Elmar
Hallo Experten,
wie bekomme ich es denn in VBA hin, dass ein Makro im markierten Bereich (der aber immer mal größer oder kleiner sein kann in meiner Tabelle, aber immer bei A1 startet) immer nach der letzten markierten Spalte den ganzen Bereich absteigend sortiert.
Leider stehe ich völlig auf dem Schlauch....
Vielleicht hat von euch Experten jemand eine Idee.
VG aus Bayern
Elmar

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Zeichne das mal als Makro auf ...
27.04.2021 21:30:33
lupo1
... der Range wird dann entweder ermittelt und eingetragen (das wäre nicht so gut, da nicht flexibel), oder der Sortierbereich wird gleich als Range("A1").CurrentRegion ermittelt. Das kannst Du auch selbst korrigieren.
AW: Bereich sortieren
27.04.2021 21:32:18
ralf_b
https://docs.microsoft.com/de-de/office/vba/api/excel.application.selection
Selection bezeichnet den markierten Bereich und gibt in diesem Fall eine Rangeobjekt zurück. Das kannst du entsprechend auswerten. Letzte Spalte, erste Zeile usw. und dann die Sortierung dazu einstellen.
Anzeige
AW: Bereich sortieren
27.04.2021 21:46:10
Elmar
Hallo ralf_b,
das verstehe ich schlicht nicht, kannst Du mir ein Beispiel geben mit einem Code?
Den Bereich markiere ich mit
With ActiveSheet.UsedRange
Range(Cells(1, 1), .Cells(.Rows.Count, .Columns.Count)).Select
End With
nun bekomme ich den Code nicht hin, dass nach der letzten Spalte sortiert wird.
Danke mal vorab
Grüße
Elmar
AW: Bereich sortieren
27.04.2021 21:58:05
ralf_b
Wenn du den Bereich schon mit Usedrange in die Hand nimmst, dann brauchst du weder das Select noch den Bereich anders ermitteln.
Usedrange ist bereits ein auswertbarer Zellbereich. Aber es geht laut Officehilfe auch einfacher die letzte Zelle des benutzten Bereiches zu ermitteln.
set lastcell = ActiveSheet.Cells.SpecialCells(xlCellTypeLastCell)
https://docs.microsoft.com/de-de/office/vba/api/excel.range.specialcells
Anzeige
AW: Bereich sortieren
27.04.2021 22:00:15
Daniel
Hi

With Selection 'oder wie immer du deinen Bereich vorliegen hast
.Sort Key1:=.Cells(1, .Columns.Count), Order1:=xldescending, header:=xlguess
End with
Gruß Daniel
AW: Bereich sortieren
27.04.2021 22:40:05
GerdL
Hallo Elmar,
unter mehrere Spalten absteigend sortieren, kann man sich verschiedene Varianten vorstellen.

Sub Unit()
Dim X As Range
If TypeOf Selection Is Range Then
With Selection
If .Cells(1).Address = "$A$1" Then
.UnMerge
If .Cells.Count > 6 Then
Set X = Cells(1, .Columns.Count + 1)
.Copy X
X.Resize(.Rows.Count, .Columns.Count).Sort Key1:=X, order1:=xlDescending, Header:=xlNo
Set X = Nothing
End If
End If
End With
End If
End Sub
Gruß Gerd
Anzeige
AW: Bereich sortieren
27.04.2021 22:59:20
Elmar
Hallo Experten,
jetzt hab ich gleich 3 Lösungen, die ich verwenden kann, habs auch noch ausprobiert!
Ich danke euch für euren super support!!
Gruß aus München
Elmar

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige