AW: Beide Möglichkeiten funktionieren! Tsd Dank!, owT
04.02.2011 16:14:23
Jörn
Hallo,
nur der Vollständigkeit halber das fertige Makro:
Es sortiert einen dynamischen Bereich beginnend mit A1 nach den Zeilensummen, wobei in Spalte A und Zeile 1 die Überschriften stehen. Die Summen werden anschließend entfernt.
Sub TotalsSort()
Dim Ywert As Integer
Dim Ywert1 As Integer
Dim i As Integer
Dim Xwert1 As Integer
Dim Zwert As Integer
Application.ScreenUpdating = False
Xwert = Cells(Rows.Count, 1).End(xlUp).Row
For i = 1 To Xwert - 1
Ywert = Cells(1 + i, Columns.Count).End(xlToLeft).Column
Ywert1 = Cells(1 + i, Columns.Count).End(xlToLeft).Offset(0, 1).Column
Range(Cells(1 + i, 2), Cells(1 + i, Ywert)).Name = "bereich" & (i)
Cells(1 + i, Ywert1).FormulaLocal = "=Summe(Bereich" & i & ")"
Next i
Cells(1, Ywert1).Formula = "Total"
Zwert = Cells(1, Columns.Count).End(xlToLeft).Column
Range(Cells(1, 1), Cells(Xwert, Zwert)).Copy
ActiveSheet.Cells(1, 1).PasteSpecial Paste:=xlPasteValues
Range(Cells(1, 1), Cells(Xwert, Zwert)).Select
Selection.Sort Key1:=Cells(1, Zwert), Order1:=xlDescending
Range(Cells(1, Zwert), Cells(Xwert, Zwert)).Delete
Range("A1").Select
Application.ScreenUpdating = True
End Sub
Gruß
Jörn