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

Tabelle mit Daten aus anderer Excel-Datei ergänzen

Tabelle mit Daten aus anderer Excel-Datei ergänzen
12.10.2012 13:43:45
Duinne
Hallo Leute,
ich habe ein größeres Umsetzungsproblem:
Ich habe eine Datei mit einer Tabelle, in denen eine Menge Datensätze enthalten sind. Diese Datensätze sind Baugruppen, die jeweils durch eine Leerzeile getrennt sind. Ganz oben eines "Blocks" steht immer der Name und die Nummer (und noch ein paar andere Dinge) der Baugruppe und darunter bis zur nächsten Leerzeile alle Komponenten, die in dieser Baugruppe enthalten sind.
Dann gibt es da eine zweite Datei mit einer Tabelle, in der zunächst nur die Baugruppen aufgelistet sind. (Das ist quasi immer die erste Zeile einer Baugruppe aus der ersten Datei) Diese Baugruppen sind ebenfalls durch eine oder mehrere Leerzeilen getrennt.
Nun möchte ich Folgendes: in meiner zweiten Datei soll ein Makro gestartet werden, dass Zeile für Zeile durchgeht. Wenn in einer Zeile z.B. in der Spalte F etwas eingetragen ist, soll das Makro genau diesen Wert in der ersten Datei (ebenfalls Spalte F) suchen. Wenn der Wert dort gefunden wurde, sollen alle Zeilen unter dem gefunden Wert bis zur nächsten Leerzeile in die zweite Datei unter dem Suchwert eingefügt werden. Wenn der Suchwert in der ersten Datei nicht gefunden wird, soll die nächste Zeile überprüft werden. Bis zur letzten gefüllten Zeile.
Es gibt allerdings noch einen zweiten Fall: unter dem Suchwert in der zweiten Datei wurden bereits die Unterkomponenten eingefügt. In diesem Fall sollen alle Zeilen unter dem Suchwert bis zur nächsten Leerzeile gelöscht werden und die Prozedur aus Fall 1 durchgeführt werden.
Würde mich freuen, wenn mir hierbei jemand helfen könnte.
Vielen Dank und Gruß
Duinne

16
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: CROSSPOST O-L
12.10.2012 14:09:33
Duinne
Jau, wie man sieht wurde mir dort nicht geholfen.

das liegt wohl ....
12.10.2012 14:12:44
Rudi
Hallo,
an deiner Beschreibung und/oder fehlenden Beispielen.
Gruß
Rudi

AW: das liegt wohl ....
12.10.2012 14:44:46
Duinne
Hallo Rudi,
wenn dem so ist, kann man das ja auch kund tun, nicht wahr.
Also hier nun die beiden Dateien in übersichtlicher Form.
Datei 1 ist die Tabelle mit den Datensätzen. Die Zeile, in der die Benennung grau ist, ist die erwähnte oberste Zeile einer Baugruppe. Darunter folgen alle Teile, die in diese Baugruppe gehören. Danach folgt eine Leerzeile und die nächste Baugruppe.
Datei 2 ist die Tabelle, in der zunächst nur die oberste Zeile einer Baugruppe enthalten ist.
Die Nummer, die links neben der grauen Zelle steht, soll nun in Datei 1 gesucht werden. Wenn sie gefunden wird, sollen alle Komponenten (alle Werte einer Zeile), die unter dem gefundenem Wert in Datei 1 stehen, unter dem Suchwert in Datei 2 eingefügt werden.
Gruß
Duinne
https://www.herber.de/bbs/user/82098.xlsx
https://www.herber.de/bbs/user/82099.xlsx

Anzeige
VBA Variante
12.10.2012 17:13:10
Tino
Hallo,
habe hier mal eine VBA Variante aufgebaut,
daher habe ich die Datei2 als xlsm gespeichert, damit man VBA verwenden kann.
Also wenn Du in der Datei2 auf den Button drückst,
werden die Lfd.-Nr. in der Datei1 gesucht und aufgelistet.
Die Tabellen müssen wie in Deinem Beispiel gleich aufgebaut sein.
https://www.herber.de/bbs/user/82100.zip
Gruß Tino

Es tut sich nichts.
14.10.2012 10:28:51
Duinne
Hallo Tino,
vielen Dank für deine Hilfe und deine Zeit! Ich habe mir deine Datei angesehen. Allerdings ist bei mir nichts passiert. Das Makro läuft sauber durch ohne Fehlermeldungen. Allerdings sieht die Datei2 genauso aus wie vorher. Was ich allerdings festgestellt habe, ist, dass wenn ich den Inhalt von Datei2 lösche und dann das Makro startet, listet das Makro die drei obersten Baugruppen auf. Aber nicht die Komponenten die darunter stehen.
Vielleicht habe ich mich aber auch blöd ausgedrückt in meiner Beschreibung.
Kannst du da noch etwas machen?
Danke und Gruß
Duinne

Anzeige
AW: Es tut sich nichts.
14.10.2012 10:39:20
Duinne
Hallo Tino,
habe jetzt verstanden, worum es geht.
Du beziehst dich ausschließlich auf die Lfd-Nr. Das bedeutet für mich, dass diese Spalte in den beiden Dateien immer identtisch sein müssen. Das kann ich allerdings nicht immer sicherstellen. Deshalb war meine Idee, dass das Makro immer nach der rot eingefärbten Nummer (siehe Anhang) in Datei 1 sucht und dann alle Komponenten darunter übernimmt. Hier nochmal ein Beispiel.
Das Makro startet an und sucht den ersten Wert in Datei 2 in Spalte Q. Das wäre "1234567". Dann geht das Makro in Datei 1 und sucht dort den Wert. Den findet er in Zeile 6. Bei einem gefundenen Wert müsste das Makro jetzt automatisch die Zeilen 7 bis 9 (Blech 1, 2 und 3) - also alle gefüllten Zeilen bis zur nächsten Leerzeile - in Datei 2 übernehmen und unter Halter vollst. auflisten. Dann wird der nächste Wert überprüft.
Kann man das so machen?
Gruß
Duinne
https://www.herber.de/bbs/user/82114.xlsm

Anzeige
AW: Es tut sich nichts.
14.10.2012 10:42:54
Duinne
Ich glaube, ich hatte das Häckchen vergessen zu setzen. An dieses Forum muss ich mich noch gewöhnen.
Sorry falls jetzt alles doppelt da ist. Folgendes hatte ich noch geschrieben:
"Hallo Tino,
habe jetzt verstanden, worum es geht.
Du beziehst dich ausschließlich auf die Lfd-Nr. Das bedeutet für mich, dass diese Spalte in den beiden Dateien immer identtisch sein müssen. Das kann ich allerdings nicht immer sicherstellen. Deshalb war meine Idee, dass das Makro immer nach der rot eingefärbten Nummer (siehe Anhang) in Datei 1 sucht und dann alle Komponenten darunter übernimmt. Hier nochmal ein Beispiel.
Das Makro startet an und sucht den ersten Wert in Datei 2 in Spalte Q. Das wäre "1234567". Dann geht das Makro in Datei 1 und sucht dort den Wert. Den findet er in Zeile 6. Bei einem gefundenen Wert müsste das Makro jetzt automatisch die Zeilen 7 bis 9 (Blech 1, 2 und 3) - also alle gefüllten Zeilen bis zur nächsten Leerzeile - in Datei 2 übernehmen und unter Halter vollst. auflisten. Dann wird der nächste Wert überprüft.
Kann man das so machen?
Gruß
Duinne
https://www.herber.de/bbs/user/82114.xlsm

Anzeige
verstehe nicht alles?
14.10.2012 11:34:37
Tino
Hallo,
was soll mit den Daten geschehen die bereits oder nach dem lesen
in einem Block vorhanden sind?
Zählt immer die erste Nummer in einem Block und die anderen können gelöscht werden,
weil diese Blöcke anschließend wieder aus der Datei1 gelesen werden?
Was ist mit denen die keine Nummer in der Spalte Q haben?
Gruß Tino

AW: verstehe nicht alles?
14.10.2012 12:40:16
Duinne
Hallo Tino,
die Nummern, die in einem Block vorhanden sind, sollen gelöscht werden. Da Datei 1 sich immer wieder verändert, könnten in einem Block ja Zeilen dazugekommen oder weggefallen sein. Theoretisch würde das bedeuten, dass alle Zeilen unter der obersten Baugruppe aus Datei 2 gelöscht werden und neu eingelesen werden. Das bedeutet auch, dass immer nur die erste Nummer zählt.
Wenn in Spalte Q kein Wert steht, soll auch nichts passieren, da Spalte Q die eindeutige Identifikation einer Baugruppe ist.
Gruß
Duinne

Anzeige
AW: ok. noch ein Versuch
14.10.2012 15:15:00
Duinne
Hallo Tino,
das ist total super! Genau so habe ich es beschrieben. Sehr schön!
Zwei fragen hätte ich allerdings noch: die Zeilen, die eingefügt wurden, haben offensichtlich die gleiche Formatierung wie die oberste Zeile. Prinzipiell wäre das nicht schlimm, wenn ich dort keine Farbe hätte. Wie man im Anhang sehen kann, sind alle eingefügten Zeilen in der Spalte Q auch eingefärbt. Könnte man das noch umschreiben, dass die Farbe nicht mit übernommen wird?
Meine 2. Frage: nur zum Verständnis. Du beziehst dich weiterhin auf die Lfd-Nr, ist das korrekt? Solange in Spalte A in Datei 1 keine Nummer eingetragen ist, wird die Zeile auch nicht übernommen, richtig?
Gruß und ganz lieben Dank
Duinne
https://www.herber.de/bbs/user/82119.xlsm

Anzeige
AW: ok. noch ein Versuch
14.10.2012 15:35:36
Tino
Hallo,
kann ich dir einbauen, bin aber jetzt nicht am PC.
Gruß Tino

AW: ok. noch ein Versuch
14.10.2012 15:39:44
Duinne
Hey Tino,
wie du eben Zeit hast.
Vielen Dank!
Gruß, Duinne

AW: ok. noch ein Versuch
14.10.2012 16:48:10
Tino
Hallo,
beim auslesen aus der Datei1 gehe ich davon aus wenn in Spalte A oder Q nichts steht, dass es sich um eine leere Zeile handelt und der Block abgeschlossen ist.
Genau so ist es beim löschen der Blöcke bevor die Daten neu gelesen werden.
https://www.herber.de/bbs/user/82120.zip
Gruß Tino

AW: ok. noch ein Versuch
17.10.2012 16:01:56
Duinne
Hallo Tino,
vielen Dank für deine Arbeit und sorry, dass ich erst jetzt schreibe.
Gruß
Duinne
Anzeige

330 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige