Clever-Excel-Forum

Normale Version: Einsortierung nach Datum
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2 3 4
... weil ich den Filter in #4 ins Spiel gebracht habe. Bis dahin war keine Rede von gesperrten Zellen. Und da der Filter aktiviert war, wäre es die einfachste Lösung gewesen. Erst danach kam Peter mit dem Blattschutz um die Ecke.
(11.04.2020, 10:09)schauan schrieb: [ -> ]Hallöchen,

anbei die Datei, mit aktiviertem Blattschutz - Zahlenfilter > 15000 und nach Rest sortiert …

Hi.

Geht bei mir wirklich nicht, siehe angehängtes Bild
Wenn das klappen würde, bräuchte ich kein Malkro
Moin Peter,

hast du das aufgezeichnete Makro ausprobiert? Anstelle der Tastenkombination kannst du dir auch einen Button anlegen und diesem das Makro zuweisen.
Moin Günter.

Bin gerade dabei und habe folgende Änderungen vorgenommen:

Code:
Option Explicit

Sub SortierenNachDatum()
'
' SortierenNachDatum Makro
' Tastenkombination Strg+s Sortieren nach Datum - ältestes Datum oben
'
' Tastenkombination: Strg+s
'
    ActiveWorkbook.Worksheets("Palettenkonto").Sort.SortFields.Clear
    ActiveWorkbook.Worksheets("Palettenkonto").Sort.SortFields.Add2 Key:=Range( _
        "A9:A1107"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:= _
        xlSortNormal
        With ActiveWorkbook.Worksheets("Palettenkonto").Sort
            .SetRange Range("A9:F1107")
            .Header = xlYes
            .MatchCase = False
            .Orientation = xlTopToBottom
            .SortMethod = xlPinYin
            .Apply
        End With
    Range("I9").Select
End Sub

Was ich jetzt nicht verstehe ist die vorletzte Codezeile: Range ("I9").select


Nach speichern und ausführen bekomme ich folgende Fehlermeldung:

Microsoft Visual Basic for Applications
Objekt unterstützt diese Eigenschaft oder Methode nicht
Hallöchen,

Zitat:Geht bei mir wirklich nicht, siehe angehängtes Bild

wie auf dem Bild zu sehen ist machst Du nicht, was ich vorgeschlagen habe. Du hast A bis G markiert.

Zitat:Lass die Spalte G also gesperrt und sortiere A bis F.

Dann bräuchtest Du kein Makro. Das Makro sortiert übrigens auch nur A bis F, siehe

Code:
.SetRange Range("A9:F1107")
Hi Peter,

ich habe es bei mir nochmals getestet: sortiert einwandfrei. Allerdings solltest du den Bereich bereits ab A8 wählen, da du Überschriften hast und diese im Code angegeben sind:
Code:
.Header = xlYes

Dass nur bis Spalte F sortiert wird, ist schon richtig. Ich nehme an, dass du immer noch Spalte G mit den Formeln geschützt hast.

Tiefergehende Hilfe bei Makros kann ich dir leider nicht anbieten, da ich selbst nur rudimentäre Kenntnisse besitze.

Nachtrag:

Damit
Code:
Range ("I9").select
bin ich lediglich aus dem markierten Bereich rausgegangen.
Hallo Günter,

Zitat:Dass nur bis Spalte F sortiert wird, ist schon richtig.

Da hat doch auch keiner was gegen gesagt. Ist nur zur Verdeutlichung, das das Makro prinzipiell nichts anders macht als beim manuellen sortieren und daher die Begründung des TE, dass er ein Makro braucht, weil das Sortieren anders nicht geht, nicht richtig ist.
Wenn Du in Deinem Code bis Spalte G gehen würdest, würde der Code wegen dem Blattschutz auch nicht gehen.
Zitat:Wenn Du in Deinem Code bis Spalte G gehen würdest, würde der Code wegen dem Blattschutz auch nicht gehen.
... das muss jetzt nicht weiter diskutiert werden?! War meines Wissens nicht Thema.
[attachment=31020]
(12.04.2020, 10:15)schauan schrieb: [ -> ]....
Wenn Du in Deinem Code bis Spalte G gehen würdest, würde der Code wegen dem Blattschutz auch nicht gehen.

Hi.

Sorry, war das falsche Bild aber es geht definitiv bei mir nicht.

Zustand:
Spalte A bis F ist frei, Spalte G ist gesperrt, das Blatt ist geschützt!

Vielleicht hilfreich: Office 2016

(12.04.2020, 10:08)WillWissen schrieb: [ -> ]Hi Peter,

ich habe es bei mir nochmals getestet: sortiert einwandfrei. Allerdings solltest du den Bereich bereits ab A8 wählen, da du Überschriften hast und diese im Code angegeben sind:
Code:
.Header = xlYes

Dass nur bis Spalte F sortiert wird, ist schon richtig. Ich nehme an, dass du immer noch Spalte G mit den Formeln geschützt hast.

Tiefergehende Hilfe bei Makros kann ich dir leider nicht anbieten, da ich selbst nur rudimentäre Kenntnisse besitze.

Nachtrag:

Damit
Code:
Range ("I9").select
bin ich lediglich aus dem markierten Bereich rausgegangen.

Hi Günter.

Habs auf A8 geändert

Code:
Option Explicit

Sub SortierenNachDatum()
'
' SortierenNachDatum Makro
' Tastenkombination Strg+s Sortieren nach Datum - ältestes Datum oben
'
' Tastenkombination: Strg+s
'
    ActiveWorkbook.Worksheets("Palettenkonto").Sort.SortFields.Clear
    ActiveWorkbook.Worksheets("Palettenkonto").Sort.SortFields.Add2 Key:=Range( _
        "A8:A1107"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:= _
        xlSortNormal
        With ActiveWorkbook.Worksheets("Palettenkonto").Sort
            .SetRange Range("A8:F1107")
            .Header = xlYes
            .MatchCase = False
            .Orientation = xlTopToBottom
            .SortMethod = xlPinYin
            .Apply
        End With
    Range("I9").Select
End Sub


Fehlermeldung ist die Gleiche
Hi Peter,

kannst du mal deine Datei incl. Makro und Formeln hochladen? Falls du sensible Daten drin hast, einfach anonymisieren.
Seiten: 1 2 3 4