Liste von A-Z sortieren, wenn Tabellenblatt sich ändert
#1
hi, ich möchte, dass dass Spalte A(A2-A500) sich von A-Z sortiert, sobald sich dort etwas ändert. So sieht das aus, was ich in dem Tabellenblatt in VBA eingefügt habe:


Code:
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("A2:A500")) Is Nothing Then
   Range("A2:A500").Select
    ActiveWorkbook.Worksheets("Namen").Sort.SortFields.Clear
    ActiveWorkbook.Worksheets("Namen").Sort.SortFields.Add Key:=Range("A2"), _
        SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
    With ActiveWorkbook.Worksheets("Namen").Sort
        .SetRange Range("A2:A40")
        .Header = xlNo
        .MatchCase = False
        .Orientation = xlTopToBottom
        .SortMethod = xlPinYin
        .Apply
    End With
    Range("A1").Select
End If
End Sub
Es funktioniert jedoch nicht. Ich kann in dem Bereicht etwas ändertn oder neu hinein schreiben. Es wird nichts sortiert. Eine Fehlermeldung gibt es aber auch nicht.

Wo steckt der Fehler?
Top
#2
ach komisch, hatte den Bereich falsch gesetzt. Es muss
Code:
.SetRange Range("A2:A500")

lauten.
Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste