Anzeige
Archiv - Navigation
1136to1140
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Sortierung erfolgt falsch

Sortierung erfolgt falsch
Josef
Hallo!
Bei einer Neueingabe wird ein neuer Datensatz in die letzte Zeile geschrieben. Unter anderem wird die Formel
=SUMMEWENN(Frequenzen!$A$2:$A$20718;LaborGM!B1906;Frequenzen!$C$2:$C$20718)
in der Spalte L in die nächste freie Zelle geschrieben.
In diesem Fall wäre also der neue Datensatz in der Zeile 1906
Wenn ich jetzt mit dem unteren Makro sortieren will (Bereich) so wird nicht richtig sortiert. in der Spalte L Zeile 2 wird z. B. dieser Datensatz eingereiht und in L2 steht dann die gleiche Formel, welche in der Zeile 1906 gestanden ist, also:
=SUMMEWENN(Frequenzen!$A$2:$A$20718;LaborGM!B1906;Frequenzen!$C$2:$C$20718)
und nicht
=SUMMEWENN(Frequenzen!$A$2:$A$20718;LaborGM!B2;Frequenzen!$C$2:$C$20718)
wie es eigentlich sein sollte.
Warum ist dies bitte so und wo könnte hier mein Denkfehler sein?
Sub LABGM_Sort()
Dim Bereich As Range
Dim Bereich1 As Range
Dim wks As Worksheet
Set wks = Workbooks("Vertragspartner_SVA.xls").Worksheets("LaborGM")
Set Bereich = wks.Range("A2:P" & ActiveSheet.Range("A65536").End(xlUp).Row)
Set Bereich1 = wks.Range("C2:C" & ActiveSheet.Range("A65536").End(xlUp).Row)
Bereich1.NumberFormat = "@"
Bereich.Sort Key1:=Range("A2"), Order1:=xlAscending, Key2:=Range("K2") _
, Order2:=xlAscending, Key3:=Range("B2"), Order3:=xlAscending, Header:= _
xlGuess, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal, DataOption2:=xlSortNormal, DataOption3:= _
xlSortNormal
End Sub

Danke
Josef

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
teste mal bitte...
11.02.2010 10:19:56
Björn
... ob es funktioniert, wenn du das ganze nicht per VBA, sondern von Hand sortierst, also über die normale Sortierfunktion von Excel.
Wenn es dann klappt, dann zeichne das ganze mal mit dem MAkrorekorder auf und vergleiche den Code mit Deinem.
Ich kann keinen Fehler erkennen...
Ansonten mal Mappe hochladen.
Gruß
Björn B.
AW: teste mal bitte...
11.02.2010 10:32:37
Josef
Hallo Björn!
Danke für Deine Antwort.
Sortierung mit der Hand ergab das selbe Problem.
Josef
Schlecht...
11.02.2010 10:36:09
Björn
Hallo Josef,
das ist erstmal für Dich beruhigend, dass Du nix falsch programmiert hast, aber das heißt auch, dass es umständlich wird, den Fehler zu umgehen.
Mir fällt spontan nur ein, dass du die Spalte mit der Falschen Formel kpl. löscht (also die Inhalte) und sie dann wieder neu in die Spalte schreibst. Kannst du ja hinter die Sortierung programmieren.
Gruß
Björn B.
Anzeige
AW: Schlecht...
11.02.2010 11:00:09
Josef
Hallo!
Eine Lösung wäre wahrscheinlich dieses Makro:
Sub Spalte_L_Formel()
Dim Bereich As Range
Dim wks As Worksheet
Set wks = Workbooks("Vertragspartner_SVA.xls").Worksheets("LaborGM")
Set Bereich = wks.Range("L2:L" & ActiveSheet.Range("A65536").End(xlUp).Row)
Bereich.FormulaR1C1 = _
"=SUMIF(Frequenzen!R2C1:R20718C1,LaborGM!RC[-10],Frequenzen!R2C3:R20718C3)"
End Sub
Das heißt nach dem Sortieren die Spalte markieren und die Formel wieder neu reinkopieren.
Josef
Warum noch offen?
11.02.2010 11:06:19
Björn
Hallo,
Eine Lösung wäre wahrscheinlich dieses Makro:

Warum nur wahrscheinlich? Das ist doch genau das, was ich Dir gesagt habe.
Und warum Frage noch offen?
Klappt es nicht? Oder wo ist noch das Problem?
Gruß
Björn B.
Anzeige
AW: Warum noch offen?
11.02.2010 11:10:15
Josef
Hallo Björn!
Irrtum von mir. Natürlich geschlossen.
Danke
Josef

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige