Anzeige
Archiv - Navigation
736to740
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
736to740
736to740
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Variable Zeilen sortieren

Variable Zeilen sortieren
27.02.2006 05:52:06
Michaela
Hallo an alle,
ich habe ein für mich unüberschaubares Problem mit einer Excel-Tabelle, die ich per Makro sortieren soll. Einen Auszug der Datei habe ich angehängt unter https://www.herber.de/bbs/user/31444.xls.
Die Tabelle soll nachher so aussehen:
a) zuerst alle Zeilen auflisten, in denen E und F > 0 sind
alphabetisch sortiert nach Spalte C (Name)
b) danach sollen alle Zeilen folgen, in denen F > 0 ist, E und G = 0 sind,
alphabetisch sortiert nach Spalte C (Name)
c) danach sollen alle Zeilen folgen, in denen G und E > 0sind, F = 0 ist,
alphabetisch sortiert nach Spalte C (Name)
d) danach sollen alle Zeilen folgen, in denen E > 0 ist, G und F = 0 sind,
alphabetisch sortiert nach Spalte C (Name)
Wichtig ist zu wissen, dass die Tabelle variabel ist, das heißt, es können 40, aber auch mal 500 ausgefüllte Zeilen sein. Ich weiß auch nie, auf wieviele Zeilen jeweils die Bedingungen a) bis d) zutreffen (d.h., die Angabe von Zeilen à la Rows(5, 7) usw. funktioniert bei meinem Problem nicht).
Einen Teil der Aufgabe habe ich geschafft, aber b) und c) der obigen Liste bekomme ich einfach mangels Kenntnisse nicht hin.
Wer kann mein bestehendes Makro ergänzen bzw. mir mit korrektem VBA-Code von

Sub bis End 

Sub helfen?
Für eure Hilfe recht herzlichen Dank im voraus.
Michaela

		

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Variable Zeilen sortieren
27.02.2006 08:01:24
HAW
Hallo Michaela,
das Makro fügt in die Spalte H eine Formel ein, die die vier Varianten mit einer Nummer beschreibt.
Danach wird zuerst nach der Spalte H (Nummer 1 bis 4) und dann nach der Spalte C sortiert.
Die letzte Zeile wird in der Spalte C ermittelt, da hier in der Summenzeile kein Eintrag steht.

Sub SpezialSort()
Dim lz%
lz = Cells(Rows.Count, 3).End(xlUp).Row
Range("H5:H" & lz).FormulaR1C1 = _
"=IF(AND(RC[-3]>0,RC[-2]>0),1,IF(AND(RC[-2]>0,RC[-3]=0,RC[-1]=0),2,IF(AND(RC[-3]>0,RC[-1]>0,RC[-2]=0),3,IF(AND(RC[-3]>0,RC[-1]=0,RC[-2]=0),4,0))))"
Range("A5:H" & lz).Sort Key1:=Range("H5"), Order1:=xlAscending, Key2:=Range("C5") _
, Order2:=xlAscending, Header:=xlGuess, OrderCustom:=1, MatchCase:= _
False, Orientation:=xlTopToBottom, DataOption1:=xlSortNormal
End Sub

Gruß
Heinz
Anzeige
AW: Variable Zeilen sortieren
27.02.2006 08:04:34
HAW
Hallo Michaela,
ich habe das Makro für Excel 2003 geschrieben. Ich glaube, dass in xl2000 beim Sortierungsbefehl die letzten Parameter (DataOption1:=xlSortNormal, DataOption2:=xlSortNormal) noch nicht existiert haben. Sollte das der Fall sein, entferne einfach die beiden Parameter.
Gruß
Heinz

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige