Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1492to1496
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

VBA - Zellen sortieren

VBA - Zellen sortieren
20.05.2016 21:38:10
Astis
Hallo zusammen,
kann mir jemand bei einem vermutlich nicht all zu schwerem Problem helfen?
Der folgende Code (teilweise mit VBA Recorder aufgenommen) soll den ausgewählten Bereich sortieren. Allerdings soll sich der Code nicht "fixiert" auf das bezeichnete Worksheet "schumann" beziehen sondern lediglich auf das "ausgewählte" bzw. aktive.
Wenn ich das versuche umzuschreiben fehlt aber immer ein "Objekt" - kann einer von euch mal drü _
ber schauen? vielen Dank !

Sub Sortieren()
x = Cells(Rows.Count, 1).End(xlUp).Offset(0, 0).Row
Range("A5:A" & x).Select
ActiveWorkbook.Worksheets("Schumann").Sort.SortFields.Clear
ActiveWorkbook.Worksheets("Schumann").Sort.SortFields.Add Key:=Range("B5:B30" _
), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
With ActiveWorkbook.Worksheets("Schumann").Sort
.SetRange Range("A4:B" & x)
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
Range("A5").Select
End Sub

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA - Zellen sortieren
20.05.2016 21:56:00
Zwenn
Hallo Astis,
habe es nicht getestet, aber um Dich auf das aktive Arbeitsbaltt zu beziehen müsste folgendes funktionieren:

Sub Sortieren()
x = Cells(Rows.Count, 1).End(xlUp).Offset(0, 0).Row
Range("A5:A" & x).Select
ActiveWorkbook.Worksheets("Schumann").Sort.SortFields.Clear
ActiveWorkbook.Worksheets("Schumann").Sort.SortFields.Add Key:=Range("B5:B30" _
), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
With ActiveSheet.Sort 'diese Zeile geändert
.SetRange Range("A4:B" & x)
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
Range("A5").Select
End Sub
Viele Grüße,
Zwenn

Anzeige
AW: VBA - Zellen sortieren
20.05.2016 22:31:00
Werner
Hallo,
war auch dran. Meinst du nicht, dass auch der obere Teil des Makros in ein With rein muss?
    Dim x as Long
With ActiveSheet
x = .Cells(Rows.Count, 1).End(xlUp).Offset(0, 0).Row 'was soll das Offset(0, 0)?
.Range("A5:A" & x).Select
.Sort.SortFields.Clear
.Sort.SortFields.Add Key:=.Range("B5:B30"), SortOn:=xlSortOnValues, Order:=xlAscending, _
DataOption:=xlSortNormal
End With
Gruß Werner

AW: VBA - Zellen sortieren
20.05.2016 22:36:06
Zwenn
Jup,
hast Recht Werner. Habe da nicht jedes "ActiveWorkbook.Worksheets("Schumann")" berücksichtigt.
Gruß,
Zwenn

Anzeige
AW: VBA - Zellen sortieren
20.05.2016 22:57:28
Astis
Hallo und vielen Dank für die Hilfe, die Kombination aus beiden Beiträgen hat mein Problem gelöst. Besten Dank dafür an euch beide !

AW: Gerne und danke für die Rückmeldung. o.w.T.
21.05.2016 08:52:49
Werner

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige