folgendes Makro soll aktive Autofilter entfernen und danach nach Nachnahmen sortieren:
Sub nachname()
' nachname Makro
Dim wks As Worksheet, Zeile_L As Long
Set wks = ActiveSheet
With wks
' Zeile_L = .UsedRange.Row + .UsedRange.Rows.Count - 1 'letzte benutzte Zeile im Blatt
Zeile_L = .Cells(.Rows.Count, 1).End(xlUp).Row 'Letzte Zeile mit Inhalt in Spalte A
If Zeile_L > 4 Then
If .AutoFilterMode = True Then .AutoFilterMode = False
.Range("$A$3:$AJ$" & Zeile_L).AutoFilter Field:=1
.AutoFilter.Sort.SortFields.Clear
.AutoFilter.Sort.SortFields.Add Key:= _
.Range("A3"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:= _
xlSortNormal
With .AutoFilter.Sort
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
.AutoFilterMode = False
End If
End With
End Sub
Das funktioniert soweit auch ganz gut, allerdings musste ich in der Praxis feststellen, das vorallem nachdem einzelne Blätter kopiert wurden, das Entfernen von aktiven Autofiltern beim ausführen des Makros nur "sporadisch" funktioniert.Hat vlt. jemand noch eine Idee zwecks Optimierung?
LG und vielen Dank im Voraus