Daten aus 2 Quellen in einer Tabelle zusammenfassen...

Antwort erstellen


BBCode ist eingeschaltet
[img] ist ausgeschaltet
[url] ist eingeschaltet
Smileys sind ausgeschaltet

Die letzten Beiträge des Themas
   

Ansicht erweitern Die letzten Beiträge des Themas: Daten aus 2 Quellen in einer Tabelle zusammenfassen...

Re: Daten aus 2 Quellen in einer Tabelle zusammenfassen...

von AhQ » Sa, 06.09.2008 16:25

Hallo Eddie,

nettes Problem,was Du hier gestellt hast. Ich hab mir mal eine Beispieldatei mti dem von Dir vorgegebenen Aufbau gemacht und hab dann drauf losgebastelt.

Input1 und Input2 kommen ganz normal Deine Werte. Vielleicht beachtest Du, daß in Input2 die Überschriften in Zeile3 erst beginnen.

dahinter beginnt dann die eigentliche Zählung. Die Grundidee ist einfach, es wird einfach zu jedem wort geschaut, ob das Teilwort enthalten ist und bei einer Übereinstimmung eine Art Zählmechanismus um eins hochgesetzt, sodaß jede Übereinstimmung eine eindeutige Zahl hat, anhand derer wir sie wieder finden.

Input2.E1 und der Rest der Zeile hab ich einfach mal drin gelassen, damit Du beim Anpassen für Deine Bedürfnisse einen schnellen Weg hast, die Teilworte aus Input1 dynamisch in Input2 zu übernehmen. Das 2, 3, 4 usw. sind dabei nix anderes wie die Zeilennummer für den jeweiligen Indirekt() in Zeile3. Der baut sich die Zelladresse zusammen und übernimmt so das zu suchende Teilwort.

Zeile 2 gibt die niedrigste Nummer der Spalte aus, das braucht nachher ein WVerweis.

In Zeile4 beginnt jetzt der eigentliche Spaß. Schauen wir uns mal zum besseren Verständnis die Formel in F10 an:

=WENN(ISTFEHLER(FINDEN(F$3;$B10));"";ANZAHL($E$4:E$5500)+ANZAHL(F$4:F9)+1)

das Istfehler() fängt uns die Fehlermeldung bei keiner Übereinstimmung ab und gibt in diesem Fall einen Leerstring ("", also quasi nix) zurück. Wenn Finden() fündig wird, dann zählt Anzahl() erst einmal von E4 ab bis zur Spalte vor der aktuellen plus in unserer aktuellen bis zum Feld oben drüber, wieviele Einträge (=Übereinstimmungen) da sind und zählt dann eins dazu. Das ist der Zähler für den Index, jede Übereinstimmung bekommt zeilenweise eine eindeutige Nummer.

Die Auswertungstabelle sieht bißchen wild aus, ist es aber nicht, das machen nur die Indirekt(), die ich nahm, damit Du die Tabelle schnell Deinen Bedürfnissen anpassen kannst.

Spalte A hat die Indexnummer, die wir suchen. Spalte B sucht der WVerweis das entsprechende Teilwort. (das ist der WVERWEIS, der Zeile2 vom Blatt vorher braucht). In Spalte C, D und E verrichten nun Indirekt() ihren Dienst. Folgendes treiben die (hier der aus C2)

=INDIREKT($H$1&"a"&(VERGLEICH($A2;INDIREKT($H2&4&":"&$H2&5500);0)+3))

In H1 steht der Tabellenname vom Blatt vorher (falls das nicht Input2 heißen soll...) wichtig ist hier der Punkt hinter dem Blattnamen! "a" ist die Spalte, in der am Blatt vorher der entsprechende Wert steht. Der Vergleich sucht den Indexwert und sucht ihn am Blatt vorher in der entsprechenden Spalte, so wie der Indirekt das ihm entsprechend zusammen setzt. Das +3 gleicht aus, das die Vergleichssuche erst in Zeile4 beginnt.

Spalten G und H (ermittlung der Spalte in Blatt Input2) und j und K (Hilfsspalten zum Umrechnen der zahl in Spalte) sind reine Hilfsspalten, die die Formeln brauchen.

Ich hab bei der Tabelle übrigens standardmäßig mal das automatische neu berechnen ausgeschaltet, weil es mich zum Wahnsinn trieb. Das schaltest Du entweder wieder über Extras->Zellinhalte ein oder Du drückst, was ich eher empfehlen würde, einfach F9, wenn Du eine Neuberechnung brauchst.

Ja, dann viel spaß beim Umwurschteln, daß es für Deine Bedürfnisse paßt.

Falls noch Fragen sind, nur zu.

Viele Grüße
AhQ

P.S. Hoppla, Datei vergessen...
Dateianhänge
teilwortsuchen.ods
(68.72 KiB) 31-mal heruntergeladen

Nach oben