Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

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?
Antworten Top
#2
ach komisch, hatte den Bereich falsch gesetzt. Es muss
Code:
.SetRange Range("A2:A500")

lauten.
Antworten Top


Gehe zu:


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