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

VBA Gruppierungen auslesen- moeglich?

VBA Gruppierungen auslesen- moeglich?
09.08.2016 04:59:38
hilde
Halli Hallo,
ich habe mal eine grundsaetzliche Frage an die Excel VBA Profis.
Ich habe (siehe Dateilink) verschiedene Produkte. Die einen sind Eltern, die anderen Babys. Manche Eltern besitzen Babys manche nicht.
Meine Frage bezieht sich jetzt darauf, dass ich eine Liste mit den Eltern habe (eine andere Datei) und die dazugehoerigen Babys in den Zeilen darunter einfuegen moechte.
Das Problem: die Babys lassen sich nur aufgrund der Gruppierung in der Quelldatei zu den eltern zuordnen. Kann ich nun durch die Gruppierungen (eltern immer an erster stelle der Gruppierungen) die babys zuordnen?
Link:https://www.herber.de/bbs/user/107482.xlsx

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA Gruppierungen auslesen- moeglich?
09.08.2016 18:47:44
hilde
Niemand, der weiss ob das funktioniert?
AW: VBA Gruppierungen auslesen- moeglich?
10.08.2016 02:12:02
Piet
Hallo Hilde
ich weiss im Augenblick noch nicht genau um welche Babys es geht? Man kann sie durch Gruppieren rein optisch vor meinen Augen verstecken, ich sehe als Programmierer trotzdem was im Blatt ist. Mit der genauen Zell-Adresse. Schau es dir selbst an.
Das Makro kannst du für eigene Zwecke umschreiben. Oder sage uns mal genau worum es geht ?
mfg Piet
Sub Zuordnung_zeigen()
'Schleife für alle Zellen anzeigen
For Each AC In Range("A1:A7")
MsgBox AC.Address & ")   " & AC.Value & "  /  " & AC.Cells(1, 2)
Next AC
End Sub

Anzeige
Piet hat Dich falsch verstanden, allerdings...
10.08.2016 10:52:24
Michael
Hallo Hilde & Piet,
...denke ich, dass Dein Ziel ein sehr, sehr aufwändiges Unterfangen wird.
Grds. kannst Du die Gliederungsebene von Zeilen auslesen, wobei Ebene 1 die oberste Gliederungsebene oder gänzlich nicht gegliederte Zeilen darstellt.
Schematisch also
Sub a()
Dim c As Range
For Each c In Selection: Debug.Print Rows(c.Row).OutlineLevel: Next c
End Sub
Problematisch wird's aber jetzt schon mal bei der von Dir im Beispiel gezeigten Gliederungsstruktur:
Userbild
In dieser Struktur bleibt nur Produkt "tt3" als Eltern-Produkt über, obwohl es 3 Elternprodukte gibt.
"Korrekt" gegliedert müsste es aber, aus meiner Sicht, so aussehen:
Userbild
Erst wenn das mal gesichert ist geht's ans berühmte "Eingemachte": Jede Zeile der Quelle auf ihre Gliederungsebene zu überprüfen ist ja noch leicht, aber dann stellt sich die Frage - wie/wo kennzeichnet man alle Eltern-Produkte (also alle Ebenen 1) bzw. Kind-Produkte... jeder Ebene 1 muss eine bestimmte Anzahl an Kind-Produkten zugeordnet werden - wie wird das aber bestimmt? Außerdem kommen in Deinem Beispiel auch Eltern-Produkte vor, die keine Kind-Produkte aufweisen? Zudem geht es um einen Listenvergleich, d.h. wir müssen auch sicherstellen, dass ein Ebene 1 Produkt der Quelle auch im Ziel vorkommt, ansonsten überspringen...
Ideen gibt's evtl. dazu, aber ganz ehrlich: Das ist vermutlich ein Riesenaufwand, und ich weiß nicht ob das im Rahmen einer Forums-Hilfe machbar ist. Evtl. zeig noch zwei neue Beispiel-Mappen, wie Quelle und Ziel (sagen wir mal mit 20 Eltern und zugehörigen Kind-Produkten, Dummy-Daten, in der Quelle und 15 Eltern-Produkten im Ziel) genau aussehen (also vom Aufbau muss das dem Original entsprechen) - dann hätten wir eine konkretere Vorstellung und Testumgebung. Aber versprechen kann ICH hier nix...
LG
Michael
Anzeige

18 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige