ich möchte einen Datenbereich im aktiven Tabellenblatt (A10:CV letzte genutzte Zeile)nach mehreren Kriterien aufsteigend sortieren. Der Datenbereich enthält keine Überschriften. Nach dem Sortiervorgang soll eine Meldung "Text1" erscheinen, die sich selber wieder ausblendet (z.B. nach 2sec.).
Den Bereich selektieren mache ich mit folgendem Makro (aus dem Forum entnommen):
Sub FindLastRow()
Dim lngLastRow As Long
With ActiveSheet
lngLastRow = .Cells.Find(What:="*", After:=Range("A1"), _
SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row
End With
Range("A11:CV" & lngLastRow).Select
End Sub
Beim Aufzeichnen der Sortierung entstehen nachfolgende Einzelzeilen (Auszug siehe unten). Lässt sich diese auch verkürzter darstellen (incl. variabler Zeilenanzahl) und wie sollte ich den Timer für die Meldung definieren?Über einen Tipp würde ich mich freuen.
Grüße, Constantin
ActiveWorkbook.Worksheets("Daten").Sort.SortFields.Clear
ActiveWorkbook.Worksheets("Daten").Sort.SortFields.Add Key:=Range( _
"D11:D8510"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:= _
xlSortNormal
ActiveWorkbook.Worksheets("Daten").Sort.SortFields.Add Key:=Range( _
"E11:E8510"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:= _
xlSortNormal
ActiveWorkbook.Worksheets("Daten").Sort.SortFields.Add Key:=Range( _
"F11:F8510"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:= _
xlSortNormal
ActiveWorkbook.Worksheets("Daten").Sort.SortFields.Add Key:=Range( _
"A11:A8510"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:= _
xlSortNormal
With ActiveWorkbook.Worksheets("Daten").Sort
.SetRange Range("A11:CV8510")
.Header = xlGuess
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With