Clever-Excel-Forum

Normale Version: bestimmte Zeilen schützen und von Sortierung ausnehmen
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2 3
Hallo Roland,

deine hochgeladen Datei enthält kein Makro. Du hast sie als xlsx abgespeichert - da sind Makros futsch. Abspeichern musst du unter xlsm oder xlsb.
(23.01.2016, 13:24)WillWissen schrieb: [ -> ]Hallo Roland,

deine hochgeladen Datei enthält kein Makro. Du hast sie als xlsx abgespeichert - da sind Makros futsch. Abspeichern musst du unter xlsm oder xlsb.
Hallo Günter,

ich hab die Datei noch einmal als xlsm gespeichert und hoffe, es funktioniert.
Hi Roland,

das Aufzeichnen des Codes hat anscheinend nicht geklappt - es ist zumindest kein Makro in deiner Datei. In der angehängten Word-Datei habe ich dir mal eine Anleitung geschrieben, wie das Ganze funktioniert. Probier's einfach nochmal - wir kriegen die Kuh schon noch vom Eis.

Allerdings werde ich dir fachlich bei der Makrolösung nicht behilflich sein können - mir fehlt hierzu selber das Wissen.

[attachment=3954]
(23.01.2016, 17:44)WillWissen schrieb: [ -> ]Hi Roland,

das Aufzeichnen des Codes hat anscheinend nicht geklappt - es ist zumindest kein Makro in deiner Datei. In der angehängten Word-Datei habe ich dir mal eine Anleitung geschrieben, wie das Ganze funktioniert. Probier's einfach nochmal - wir kriegen die Kuh schon noch vom Eis.

Allerdings werde ich dir fachlich bei der Makrolösung nicht behilflich sein können - mir fehlt hierzu selber das Wissen.
Hallo Günter,

danke für die Anleitung. Ich bin wie beschrieben vorgegangen und habe den Text des aufgezeichneten Makro in eine Word-Datei gespeichert, siehe Anlage.

Gruss Roland
Hi Roland,

dein Makro stelle ich hier ein, damit die Helfer es sich leichter kopieren können.

So geht das übrigens: klick auf

[
Bild bitte so als Datei hochladen: Klick mich!
]

und füge dort dein Makro ein.

Code:
Sub SortierenundSpeichern()
'
' SortierenundSpeichern Makro
' neu eingefügte Datensätze nach KW und Jahr einsortieren
'

'
   Cells.Select
   ActiveWorkbook.Worksheets("Tabelle1").Sort.SortFields.Clear
   ActiveWorkbook.Worksheets("Tabelle1").Sort.SortFields.Add Key:=Range( _
       "E2:E4003"), SortOn:=xlSortOnValues, Order:=xlAscending, CustomOrder:= _
       "2014,2015,2016", DataOption:=xlSortNormal
   ActiveWorkbook.Worksheets("Tabelle1").Sort.SortFields.Add Key:=Range( _
       "D2:D4003"), SortOn:=xlSortOnValues, Order:=xlAscending, CustomOrder:= _
       "Jan,Feb,Mrz,Apr,Mai,Jun,Jul,Aug,Sep,Okt,Nov,Dez", DataOption:=xlSortNormal
   ActiveWorkbook.Worksheets("Tabelle1").Sort.SortFields.Add Key:=Range( _
       "B2:B4003"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:= _
       xlSortNormal
   With ActiveWorkbook.Worksheets("Tabelle1").Sort
       .SetRange Range("A1:E4003")
       .Header = xlYes
       .MatchCase = False
       .Orientation = xlTopToBottom
       .SortMethod = xlPinYin
       .Apply
   End With
End Sub
Hallo,

ich sehe nach wie vor keinen Grund, warum man nicht nach der Spalte "Datum von" sortieren sollte:
Arbeitsblatt mit dem Namen 'Tabelle1'
 ABCDE
1KWDatum_VonDatum_BisMonatJahr
2101.01.201401.01.2014Jan2014
3101.01.201401.01.2014Jan2014
4101.01.201402.01.2014Jan2014
5102.01.201402.01.2014Jan2014
6102.01.2014 Jan2014
7102.01.2014 Jan2014
8102.01.201404.01.2014Jan2014
9103.01.201403.01.2014Jan2014
10103.01.2014 Jan2014
11103.01.201404.01.2014Jan2014
12103.01.201406.01.2014Jan2014
13203.01.201404.01.2014Jan2014
14104.01.201404.01.2014Jan2014
15105.01.201411.01.2014Jan2014
16206.01.201406.01.2014Jan2014
17206.01.201406.01.2014Jan2014
18206.01.201406.01.2014Jan2014
19206.01.201407.01.2014Jan2014
Diese Tabelle wurde mit Tab2Html (v2.5.0) erstellt. ©Gerd alias Bamberg

Das aufgezeichnete Makro für die Sortierung eines eingegrenzten Bereiches sieht z.B. so aus:
Code:
Sub Makro1()
'
' Makro1 Makro
'

'
    Range("A1:E17").Select
    ActiveWorkbook.Worksheets("Tabelle1").Sort.SortFields.Clear
    ActiveWorkbook.Worksheets("Tabelle1").Sort.SortFields.Add Key:=Range("B2:B17" _
        ), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
    With ActiveWorkbook.Worksheets("Tabelle1").Sort
        .SetRange Range("A1:E17")
        .Header = xlYes
        .MatchCase = False
        .Orientation = xlTopToBottom
        .SortMethod = xlPinYin
        .Apply
    End With
End Sub

Nächster Step wäre die Ermittlung der zu sortierenden Zeilen im Makro ...
Hallo Andre,

vielen Dank für deine Mühe, aber das mit Sortieren in "Datum_von" haut bei mir nicht hin, aber das ist kein Problem. Dein Makro werde ich mal probieren, komme aber erst morgen dazu. Die zu sortieren Zeilen muss ich bei Ranhge ("A1:E17") entsprechend eintragen, wenn ich das richtig verstanden habe ?

Gruss
Roland
Hallo Roland,

ja, die müssen dort eingetragen werden. Man könnte auch versuchen, per Code die entsprechenden Zeilen herauszufinden. Aber die andere Bereichsangabe musst Du auch entsprechend der Zeilen anpassen.
Hi Roland,

(25.01.2016, 18:05)helpless schrieb: [ -> ]vielen Dank für deine Mühe, aber das mit Sortieren in "Datum_von" haut bei mir nicht hin,

was bedeutet "haut nicht hin"?

Was soll passieren (wissen wir ja eigentlich: "sortieren chronologisch")?
Was passiert tatsächlich? Warum?
Welcher Fehler tritt auf?
Hallo,

das Sortieren klappt wohl deshalb nicht, weil die Datumswerte zu Hunderten als Text vorliegen und beim Sortieren nicht die richtige Methode ausgewählt wird.
Seiten: 1 2 3