Werte aus mehreren Tabellenblätter zusammenstellen

Bild

Betrifft: Werte aus mehreren Tabellenblätter zusammenstellen
von: Adam
Geschrieben am: 10.06.2015 17:10:17

Hallo Zusammen,
ich habe folgende Problematik, wo ich eure Hilfe brauche:
Ich habe mehrere Tabellenblätter mit Daten und ein Ergebnis-Tabellenblatt, wo alle Daten aufgelistet werden sollen.
Dabei soll bei den Tabellenblättern mit den Daten aus einer Spalte alle Zellen mit den Wert 1 gesucht werden und der Wert der Nachbarzelle in das Ergebnis-Tabellenblatt eingefügt werden.
Die Formel soll alle Tabellenblätter durchsuchen und alle Treffer in der Ergebnistabelle auflisten.
Beispiel:
Daten-Tabelle1
Spalte1 - Spalte2
a --------- 1
b --------- 2
c --------- 3
Daten-Tabelle2
Spalte1 - Spalte2
d --------- 1
e --------- 4
f --------- 1
ErgebnisTabelle
Spalte1
a
d
f
Meine Gedanke war es auf der Basis der unteren Formel zu realisieren und dort entsprechende Verkettungen von "Wennfehler" Funktionen mehrere Tabellen abzufragen.
Leider hat es mit mehreren Tabellen nicht ohne eine Fehlermeldung funktioniert.
Ist das der richtige Ansatz oder gibt es da eine simplere Methode?
=INDEX('Tabelle1'!$A:$A;AGGREGAT(15;6;ZEILE('Tabelle1'!$B:$B)/('Tabelle1'!$B:$B=1); ZEILE('Tabelle1'!A1)))
Danke & Gruß,
Adam

Bild

Betrifft: zunächst ... und ... dann aus zwei Tabellen ...
von: der neopa C
Geschrieben am: 10.06.2015 19:17:58
Hallo Adam,
... auch wenn derartige AGGREGAT()-Formeln keine reinen MATRIXFormeln sind, so sind sie doch welche mit MATRIXFunktionalität. Diese sind zwar schneller in der Auswertung als reine MATRIXformeln, jedoch benötigen sie trotzdem zumindest für den inneren Berechnungsteil (.../...) viel Ressourcen.
Um die Auswertung nicht gar zu sehr zu bremsen, sollte man die Auswertung auf das max. notwendigen Zeilenbereich beschränken und nicht wie bei Dir über den gesamten Zeilenbereich vornehmen lassen (dazu siehe unten stehende Formel, wo ich die Zeilenbeschränkung momentan auf 99 gesetzt habe)
Für zwei (oder dann analog für drei) Tabellenblätter könnte man das wie unten stehend aufgezeigt vornehmen. Du schreibst jedoch von "mehreren". Wie viele? Da ist es ohne VBA zweckmäßiger zunächst eine Zusammenführung der auszuwertenden Daten vorzunehmen. Das könnte man mit einfachen Zellbezügen oder auch z.B. evtl. mit Konsolidierung vornehmen (dazu sie mal hier: http://www.online-excel.de/excel/singsel.php?f=100). Anschließend wäre eine entsprechende Auswertung einfacher möglich. Evt. bietet sich aber auch gleich eine entsprechende PIVOTauswertung an.
Für nur zwei Tabellenblätter, um in Deinem aktuellen Beispiel zu bleiben, könntest Du mit folgender Formel auswerten:
=WENNFEHLER(INDEX(Tabelle1!$A:$A;AGGREGAT(15;6;ZEILE(A$1:A$99)/(Tabelle1!B$1:B$99=1);ZEILE(A1))); WENNFEHLER(INDEX(Tabelle2!$A:$A;AGGREGAT(15;6;ZEILE(A$1:A$99)/(Tabelle2!B$1:B$99=1);ZEILE(A1) -ZÄHLENWENN(Tabelle1!B:B;1)));""))
Gruß Werner
.. , - ...

Bild

Betrifft: AW: zunächst ... und ... dann
von: Adam
Geschrieben am: 11.06.2015 09:13:52
Hallo Werner,
zunächst danke für deine Rückmeldungen.
Wie du es dargestellt hast, so hatte ich es auch davor probiert. Das funktioniert mit der ersten Tabelle1 einwandfrei. Das Problem hat sich in der Prüfung der zweiten Tabelle ergeben, wo dann die Schleife mit "Zeile()-Zählenwenn()" greifen soll. Es werden keine Werte mehr ausgegeben, weil die Zeile() bereits durch die Tabelle1 weitergezählt hat. Wenn ich die Zeile() wieder bei 1 beginnen lasse, dann ermittelt die Formel die Werte für Tabelle2. Es muss noch eine Bedingung rein, worin steht, dass wenn die Tabelle1 fertig ist, bei Tabelle2 die Zeile() wieder bei 1 anfängt.
Es handelt sich übrigens um insgesamt 3 Tabellen, die geprüft werden sollen.
Gruß,
Adam

Bild

Betrifft: kann ich so nicht nachvollziehen ...
von: der neopa C
Geschrieben am: 11.06.2015 17:11:21
Hallo Adam,
... bei funktioniert meine Formel tadellos.
Gruß Werner
.. , - ...

Bild

Betrifft: AW: zunächst ... und ... dann
von: Adam
Geschrieben am: 11.06.2015 17:07:45
Hallo Werner,
ich muss korrigieren. Deine Formel passt :)
Ich habe bei "Zählenwenn" den falschen Bereich angegeben.
Besten Dank!
Gruß,
Adam

Bild

Betrifft: unsere Beiträge haben sich da überschnitten owT
von: der neopa C
Geschrieben am: 11.06.2015 17:12:41
Gruß Werner
.. , - ...

Bild

Betrifft: Doppelwerte ausschließen
von: Adam
Geschrieben am: 15.06.2015 10:18:13
Hallo Werner,
ich will in die Formel noch eine Abfrage hinzufügen, falls der Wert bereits in der Ergebnis-Tabelle vorhanden ist, soll er den Wert überspringen.
Ich hätte eine Abfrage direkt in der Aggregat-Funktion hinzugefügt mit "/(Oder(Identisch()))".
Das scheint aber nicht zu funktionieren. Siehst du dort eine bessere Lösung?
Gruß,
Adam

Bild

Betrifft: Hinweis ...
von: der neopa C
Geschrieben am: 15.06.2015 21:21:37
Hallo Peter,
... Heute und wahrscheinlich auch Morgen komme ich nicht dazu, es mir noch einmal anzusehen.
Da möglicherweise dann der thread im Archiv gelandet ist, solltest Du dann einen neuen aufmachen mit einem entsprechenden Hinweis im Betreff und vor allem den Link auf diesen Archivthread: https://www.herber.de/forum/archiv/1428to1432/t1430227.htm und am besten gleich mit einer kleinen Beispieldatei.
Gruß Werner
.. , - ...

Bild

Betrifft: Ergänzung ...
von: der neopa C
Geschrieben am: 16.06.2015 11:59:08
Hallo Adam,
... zunächst sorry, für meine gestrige falsche Ansprache.
Wäre nun doch heute dazugekommen, mich Deiner Problematik anzunehmen.
Aber ich stelle fest, dass eine kleine relevante Beispieldatei Deinerseits hier hochgeladen hilfreich sein würde.
Gruß Werner
.. , - ...


Bild

Betrifft: AW: Beispieldatei
von: Adam
Geschrieben am: 16.06.2015 13:46:30
Hallo Werner,
kein Problem wegen der Ansprache, hatte mich nur kurz gewundert wer der Peter sein soll :)
Anbei die Beispieldatei. Im Prinzip soll in der Ergebnistabelle jeder Buchstabe nur einmal aufgelistet werden. Falls dieser nochmal vorkommt, soll dieser übersprungen werden.
https://www.herber.de/bbs/user/98244.xlsx
Gruß,
Adam

Bild

Betrifft: dann zusätzlich einen VERGLEICH() integrieren ...
von: der neopa C
Geschrieben am: 16.06.2015 14:24:49
Hallo Adam,
... so:

 A
1Ergebnis
2a
3f
4d
5g
6h
7 

Formeln der Tabelle
ZelleFormel
A2=WENNFEHLER(INDEX(Tabelle1!$A:$A;AGGREGAT(15;6;ZEILE(A$1:A$99)/(Tabelle1!B$1:B$99=1)/ISTNV(VERGLEICH(Tabelle1!A$1:A$99;A$1:A1;)); 1)); WENNFEHLER(INDEX(Tabelle2!$A:$A;AGGREGAT(15;6;ZEILE(A$1:A$99)/(Tabelle2!B$1:B$99=1)/ISTNV(VERGLEICH(Tabelle2!A$1:A$99;A$1:A1;)); 1)); ""))


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4
Gruß Werner
.. , - ...

Bild

Betrifft: AW: dann zusätzlich einen VERGLEICH() integrieren ...
von: Adam
Geschrieben am: 16.06.2015 16:23:28
Nochmals Danke Werner. Deine Formel funktioniert einwandfrei.
Gruß,
Adam

 Bild

Beiträge aus den Excel-Beispielen zum Thema "Werte aus mehreren Tabellenblätter zusammenstellen"