Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1508to1512
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

Datensortierung

Datensortierung
10.08.2016 08:59:25
Tomi
Hi,
ich möchte eine Datenzusammenführung umsetzen, habe aber immense Probleme beim programmieren.
Meine Ausgangsdaten: txt-Files, welche von der Struktur her gleich aufgebaut sind: Name, Abkürzung, Wert, Toleranz unten, Toleranz oben.
Nur ist es jetzt so, dass die txt-Files nicht immer die gleichen Parameter vorhanden sind. Dh. es kann vorkommen, dass z.B. ein txt ein Parameter mehr hat als alle anderen.
Die bisherige Sortierung sollte bei der Zusammenführung aber immer gewahrt bleiben. Es soll keine alphabetische Sortierung sein! Ich möchte somit eine Gesamtliste mit allen Parametern haben.
Jedes TxtFile wird per Button auf einem separatem Tabellenblatt importiert und angepasst --> Umsetzung per Query tables schon fertig, siehe Makros
Ganz links befindet sich ein Gesamttabellenblatt, welches alle Parameter enthält. Je nach dem ob ein Tabellenblatt ein Parameter beinhaltet, soll natürlich der Wert des jeweiligen Blatts in das Gesamtblatt mitgeführt werden.
Mit Formeln komme ich hier absolut nicht weiter, da ich nicht einfach das längste Tabellenblatt nehmen und annehmen kann, dass dort alle möglichen Parameter vorhanden sind.
Ergo kommt es eben vor, dass ein Parameter nur von einem Tabellenblatt geliefert wird und alle anderen Tabellenblätter damit keine Werte lieferun und somit leer bleiben.
Ich weiß auch wie die Vorgehensweise der Sortierung ist, nur kann ich es nicht umsetzen.
1) Ich kopiere mir aus dem ersten tabellenblatt die erste Spalte in ein neues Tabellenblatt 'EXTRA'.
2) Nun vergleiche ich diese mit der ersten Spalte des zweites Tabellenblatts, indem ich mir Zelle für Zelle nacheinander rausnehme und schaue, ob diese Zelle vorhanden ist. Ist sie vorhanden, passiert nichts. Die Zeilennummer in dem neuen Tabellenblatt soll jedoch gespeichert werden. Ist sie nicht vorhanden, soll nach der Zeile der letzten vorhandenen Zelle eine Zeile eingefügt und der Wert reinkopiert werden. usw.
3) Vergleich mit der ersten Spalte des dritten, vierten, etc. Tabellenblatts.
Dies ist meines Wissens nach die einzige Möglichkeit, wie ich die bisherige Reihenfolge beibehalte und dabei alle Werte zusammenführe.
HIER die bisherige EXCEL: https://www.herber.de/bbs/user/107519.xlsm
Kann mir jmd mit der Schleife zum Zellenvergleich und -einsortierung helfen?
Ist das so richtig mit dem Einfügen der neuen Zeile und kopieren des aktuellen Werts, nach welchem in der Liste gesucht wurde?
Hier mal der Ansatz für das neue Makro zur Sortierung:
Sub SORT()
' SORT Makro
Sheets("teil4").Select
Columns("A:A").Select
Range("A4").Activate
Selection.Copy
Sheets("EXTRA").Select
Columns("A:A").Select
ActiveSheet.Paste
Dim zeile As Long
Dim zeilemax_EXTRA As Long
Dim zeilemax_teil4 As Long
Dim zelle_vorhanden As Long
zeilemax_EXTRA = EXTRA.Cells(Rows.Count, 1).End(xlUp).Row   '[Ermitteln der Zeilenanzahl in  _
EXTRA]
zeilemax_teil4 = teil4.Cells(Rows.Count, 1).End(xlUp).Row   '[Ermitteln der Zeilenanzahl in  _
teil4]
For zeile = 1 To zeilemax_teil4
wert_teil4 = teil4.Cells(zeile, 1).Value
Set SuBe = Sheets("EXTRA").Range("A1:A107"). _
Find(s, lookat:=xlWhole)
If Not SuBe Is Nothing Then
' Parameter vorhanden.
' ZEILENNUMMER von EXTRA FÜR FOLGENDE ABFRAGEN DAUERHAFT MERKEN, BIS SIE GENUTZT WIRD
zeile_vorhanden = ?
Else
' Parameter nicht vorhanden: unter letzten vorhandenen Wert einfügen und einsetzen
Rows(zeile_vorhanden).Insert Shift:=x1Down
teil4.Cells(zeile, 1).Copy Destination:=EXTRA.Cells(zeile_vorhanden, 1)
End If
Next zeile
End Sub

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: viele Fragen
10.08.2016 13:10:04
Fennek
Hallo,
im Prinzip sollte es mit "=sverweis()" gehen. Aber ich konnte kein Konzept erkennen, wie verschiedene txt-Dateien zusammengefasst werden sollen. Die Dummies, alle Werte auf den Namen des Sheets gesetzt, ist nicht hilfreich.
Bitte zeige unmissverständlich, wie das Wunschergebnis aussehen soll.
mfg

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige