Clever-Excel-Forum

Normale Version: Makros erstellen, um Werte in andere Register zu sortieren
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo,

Ich muss eine lange Liste an Daten in verschiedene "Register" in eine Excel-Datei sortieren.
Das bedeutet ich muss in jeder Zeile prüfen, ob:

in der Spalte C der Wert 1 steht, dann muss die komplette Zeile in das Register Nr.1.

Wenn aber in Spalte C der Wert 2 ist, dann muss die komplette Zeile in das Register Nr. 2,

wenn der Wert in der Spalte C der Wert 3 ist, dann muss die komplette Zeile in das Register Nr. 3.


Daraufhin muss in der Originaldatei geprüft werden, ob:

in der Spalte D der Wert 5 steht, dann muss die komplette Zeile in das Register Nr.1.

Wenn aber in Spalte D der Wert 2 ist, dann muss die komplette Zeile in das Register Nr. 2,

wenn der Wert in der Spalte D der Wert 3 ist, dann muss die komplette Zeile in das Register Nr. 3.

usw.

Ich habe noch keine Makros programmiert, vielleicht kann mir jemand helfen?

Vielen Dank im Voraus... :)
Hallo,

wenn du eine fertige Anwendung gebrauchen kannst, dann sieh dir mal meinen Listenseparator an.
Danke, aber leider kann ich keine Programme downloaden...
Hallo,

Zitat:Danke, aber leider kann ich keine Programme downloaden...

... hast Du eigentlich überhaupt mal geschaut, was Dir da zum Download angeboten wurde?
Das ist keine EXE-Datei sondern eine stinknormale *.xls-Datei.
Hallo, :19:

wenn du noch nie etwas mit Makros zu tun gehabt hast, wird es schwierig. Mach es doch per Formel: :21:

Code:
=WENNFEHLER(INDEX(Gesamt!A$2:A$7;AGGREGAT(15;6;ZEILE($A$2:$A$7)-1/(Gesamt!$C$2:$C$7=1);ZEILE(A1)));"")

Tabellenblattname und Bereiche natürlich noch anpassen. :21:

Hier mal ein Beispiel:
[attachment=23604]

Wenn du es per VBA benötigst, dann lade mal eine (aussagekräftige) Beispieldatei hier hoch.
Hallo,
Vielen Dank für die Formel und die Mühe! Das ist sehr nett. Allerdings möchte ich die Makros regelmäßig auf neuen Dateiblättern durchführen.

Deswegen bräuchte ich eine Makroprogrammierung... Sad

Ich füge mal eine Beispiel-Datei hinzu. Aber ich glaube, es ist ganz schön kompliziert... Sad

Grüße
Hi,

natürlich ist das etwas "komplizierter", aber mit den richtigen Werkzeugen klappt das:

1. Flussdiagramm: abstarhiere mal dein Vorhaben und versuche, ein Schaubild aufzuzeichnen, wo alle deine "Wenns" berücksichtigt werden.
2. Schau dir "Select Case ..." an.
3. Schau dir "If ... Then ... Else" an.

Viel Erfolg.
Oder verwende advancedfilter, kann handmäßig.
Hallo,

ich habe jetzt die Bedingungen mit While, if, elseIf und else geschrieben und soweit funktioniert auch das Makro. Die Zeilen mit den Bedingungen werden in andere Reiter ("Sheets") kopiert.

Jetzt würde ich gerne alle Zeilen auf allen Sheets in einen anderen Reiter kopieren.

Wisst ihr vielleicht, wie das geschrieben werden kann?

Und wohin muss es geschrieben werden?

Muss es z. B. vor "End if" geschrieben werden? =>
Else: Sheets("a").Rows(i).Copy Destination:=Sheets("w").Rows(i)
              
End If
i = i + 1
Wend
End Sub

Danke!!