![]() |
Betrifft: Zählen bei ungleicher Spaltenlänge
von: Heinz H
Geschrieben am: 31.10.2014 19:43:29
Hallo Leute
Habe ein paar Probleme mit Summe & sortieren.
Ich möchte gerne in Spalten E + G eine Summe eintragen, so wie im Beispiel E6 + G6
Nur sind die Spaltenlängen unterschiedlich.
Die Summe sollte rot sein mit weisser Schrift.
Weiters sollte B:L sortiert werden nach erstens nach Spalte B,zweite nach Spalte I
Ich weiss es ist etwas komplex das ganze.
Eventuell könnte es mit Doppelklick in Spalte A funktionieren.
Könnte die Datei eventuell jemand ansehen und mir weiterhelfen?
Danke,Heinz
https://www.herber.de/bbs/user/93481.xlsm
![]() ![]() |
Betrifft: Teilbereich sortieren
von: Heinz H
Geschrieben am: 31.10.2014 20:24:51
Hallo Leute
Habe den großteil schon geschaft,mit der Farbsumme.
NUR den Teilbereich sortieren,da komme ich nicht weiter.
Es sollte B:L sortiert werden nach erstens nach Spalte B,zweite nach Spalte I
Könnte mir dazu bitte jemand helfen?
Gruß Heinz
https://www.herber.de/bbs/user/93482.xlsm
![]() ![]() |
Betrifft: AW: Teilbereich sortieren
von: fcs
Geschrieben am: 03.11.2014 06:27:42
Hallo Heinz,
das Sortieren würde ich an deiner Stelle nicht in das vorhandenen Ereignismakro integrieren sondern in einem separaten Makro bei Bedarf ausführen.
In meinem Makro wird die Tatsache ausgenutzt, dass in Spalte B die Zelle in der Summenzeile zwischen den Datumsblöcken leer bleibt.
Gruß
Franz
Sub Sortieren() 'Sortieren der Zeilen zu einem Datum nach Spalte B und I Dim wks As Worksheet Dim Zeile As Long, Zeile1 As Long, Zeile2 As Long, StatusCalc As Long Set wks = ActiveWorkbook.Worksheets("Gesperrte Ware") With Application .EnableEvents = False StatusCalc = .Calculation .Calculation = xlCalculationManual .ScreenUpdating = False End With With wks For Zeile = 3 To .Cells(.Rows.Count, 1).End(xlUp).Row If .Cells(Zeile, 2) <> "" And Zeile1 = 0 Then Zeile1 = Zeile Zeile2 = Zeile ElseIf .Cells(Zeile, 2) <> "" And Zeile1 > 0 Then Zeile2 = Zeile ElseIf .Cells(Zeile, 2) = "" And Zeile1 > 0 Then If Zeile2 - Zeile1 >= 1 Then With .Range(.Cells(Zeile1, 2), .Cells(Zeile2, 12)) .Sort Key1:=.Range("A1"), Order1:=xlAscending, _ Key2:=.Range("H1"), Order2:=xlAscending, Header:=xlNo End With End If Zeile1 = 0 Zeile2 = 0 End If Next End With With Application .EnableEvents = True .Calculation = StatusCalc .ScreenUpdating = True End With End Sub
![]() ![]() |
Betrifft: AW: Teilbereich sortieren
von: Heinz H
Geschrieben am: 04.11.2014 21:41:00
Hallo Franz
Das funktioniert ja ganz wunderbar,gleich auf Anhieb.
Recht herzlichen Dank!!
Gruß Heinz
![]() |