Office: Formelverknüpfung

Helfe beim Thema Formelverknüpfung in Microsoft Excel Hilfe um das Problem gemeinsam zu lösen; Hallo beisammen, ich habe mal wieder eine Frage. Und zwar geht es um folgendes: Ich möchte zwei Formel mit einander Verknüpfen, um eine Suche an zwei... Dieses Thema im Forum "Microsoft Excel Hilfe" wurde erstellt von dustdancer, 5. Oktober 2014.

  1. dustdancer Erfahrener User

    Formelverknüpfung


    Hallo beisammen,

    ich habe mal wieder eine Frage. Und zwar geht es um folgendes:
    Ich möchte zwei Formel mit einander Verknüpfen, um eine Suche an zwei Bedingungen zu binden (Jahr und Gruppe):

    1. Suche und Indexierung nach Jahr
    Code:
    =WENNFEHLER(INDEX(Tabelle3[ID];AGGREGAT(15;6;ZEILE(Tabelle3[Gruppe])/(FINDEN($I$3;Tabelle3[Gruppe];1)>0);ZEILE()-4)-4;1);"")
    2. Suche und Indexierung nach Gruppe
    Code:
    =WENNFEHLER(INDEX(Tabelle3[ID];AGGREGAT(15;6;ZEILE(Tabelle3[Jahr])/(FINDEN($I$2;Tabelle3[Jahr];1)>0);ZEILE()-4)-4;1);"")
    Bisher habe ich das Problem einfach damit umschifft, dass ich die erste Anfrage in eine Tabelle ausgegeben habe und dann die zweite Anfrage auf die neue Tabelle angewendet habe. Klappt zwar, aber es wird doch bestimmt noch einen eleganteren Weg geben...

    Ich würde mich freuen, wenn mir jemand da weiterhelfen könnte und mir vielleicht Links zum weiter Erarbeiten. Ich muss halt auch sagen, dass ich ein blutiger Anfänger bin, dem langsam der Kopf ganz schön raucht. Daher würde ich mich auch über eine Erklärung der Lösung freuen.
    Vielleicht kann mir auch noch einer der hier Anwesenden erklären, wieso das mit AGGREGAT / Finden klappt. Ich habe mir halt im Netzt diese Formel zusammen geklaut und sie funktioniert, nur habe ich Sie leider nicht verstanden...

    Ich bedanke mich auf jeden Fall schon einmal im voraus für die Hilfe.

    Nachtrag:
    Wenn mir jemand auch noch einen Tipp geben könnte, wie ich in die oben geschriebene index formel noch um folgendes ergänzen könnte, wäre das absolut fantastisch:
    Wenn das Feld "Betrag" (Tabelle3) einen Wert über 0 € hat, soll die Reihe mit angezeigt werden, wenn der Betrag =<0 ist, nicht.

    Schönes WE noch
     
    Zuletzt bearbeitet: 6. Oktober 2014
    dustdancer, 5. Oktober 2014
    #1
  2. Exl121150 Erfahrener User
    Hallo,

    Da du verzichtet hast, deine Formelumgebung optisch darzustellen, musste ich diese nach meinen Mutmaßungen wie folgt ermitteln:
    1) Du hast in deinem Arbeitsblatt eine Tabelle/Liste namens "Tabelle3", deren Kopfzeile sich in Zeile 4 befindet.
    Diese Tabelle hat mindestens 3 Spalten/Felder: Spalte "ID", Spalte "Gruppe" und Spalte "Jahr"

    2) In Zelle I3 deines Arbeitsblattes kannst du einen Suchtext eingeben, nach dem in der Spalte "Gruppe" gesucht wird, ob er dort als Teilstring in Zellen enthalten ist.
    In Zelle I2 deines Arbeitsblattes kannst du einen Suchtext eingeben, nach dem in der Spalte "Jahr" gesucht wird, ob er dort als Teilstring in Zellen enthalten ist.
    Die Suche nach den Werten aus I3 bzw. I2 funktioniert auch dann, wenn die Werte in Spalte "Gruppe" bzw. "Jahr" numerisch sind.

    3) Neben der Tabelle "Tabelle3" hast du ab Zeile 5 weitere 2 Spalten mit deinen zitierten 2 Formeln angelegt - möglicherweise sogar als Array-Funktionen.
    In der ersten dieser Spalten sind die Werte aus der Spalte "ID" aufgelistet, zu denen in der Spalte "Gruppe" die Teilzeichenkette aus Zelle I3 gefunden wurde.
    In der zweiten dieser Spalten sind die Werte aus der Spalte "ID" aufgelistet, zu denen in der Spalte "Jahr" die Teilzeichenkette aus Zelle I2 gefunden wurde.

    4) Ich nehme an, du willst nur diese ID-Werte, für die die Suchwerte aus I2 und I3 für Spalte "Jahr" bzw. "Gruppe" gleichzeitig zutreffen.
    Also braucht man nur die beiden Formelteile, in denen das Suchen in den Spalten "Gruppe" und "Jahr" stattfindet, zu kombinieren:
    4a) Sobald in einer Zeile beide FINDEN-Funktionen einen Fund melden, d.h. sobald
    sowohl (FINDEN($I$3;Tabelle3[Gruppe];1)>0) WAHR (=1) ist als auch (FINDEN($I$2;Tabelle3[Jahr];1)>0) WAHR (=1) ist
    und somit die Summe beider FINDEN-Funktionen = 2 ist
    lässt man sich die AGGREGAT(15;6;ZEILE(Tabelle3[Jahr]);ZEILE()-4) -Funktion ermitteln.
    4b) Andernfalls, wenn eine der FINDEN-Funktionen oder auch beide keinen Fund melden, ist ihre Summe ungleich 2
    und dann ignoriert die besagte AGGREGAT(…)-Funktion den dann erzeugten Fehler (=Division durch 0).
    4c) Der 1. Parameter der AGGREGAT-Funktion (=15) besagt, dass es sich bei der AGGREGAT-Funktion um die KKLEINSTE()-Funktion handelt.
    Der 2. Parameter der AGGREGAT-Funktion, der gleich 6 ist, besagt, dass Bereiche mit Fehlerwerten bei der Berechnung unberücksichtigt bleiben sollen (siehe Punkt 4b)).
    Alle weiteren Parameter der AGGREGAT-Funktion sind Bereiche, auf die sie (bzw. in diesem Fall die KKLEINSTE()-Funktion) angewendet werden soll, wobei der letzte Parameter in diesem Fall der Rangindex K für die KKLEINSTE()-Funktion ist.
    4d) Die INDEX-Funktion schaut in der Tabelle3[ID]-Spalte nach und holt sich den Zellwert aus der entsprechenden Zeile (und der Spalte Nr. 1).
    4e) Ist dieser Wert fehlerfrei, lässt die WENNFEHLER()-Funktion ihn einfach passieren; ansonsten gibt sie - wie in diesem Fall - einen leeren String "" zurück.
    5) Die neue Funktion lautet:
    Code:
    =WENNFEHLER(INDEX(Tabelle3[ID];AGGREGAT(15;6;ZEILE(Tabelle3[Jahr])/((FINDEN($I$3;Tabelle3[Gruppe];1)>0)+(FINDEN($I$2;Tabelle3[Jahr];1)>0)=2);ZEILE()-4)-4;1);"")
     
    Zuletzt bearbeitet: 6. Oktober 2014
    Exl121150, 6. Oktober 2014
    #2
  3. dustdancer Erfahrener User
    Sorry, dass ich anscheinend sehr kryptisch geschrieben habe. ABER VIELEN DANK!!!! Die Formel funktioniert.

    Dennoch möchte ich die kryptische Schreibweise noch einmal aufklären.
    Ausgabe Tabelle (Tabelle6) auf Blatt X, Tabelle mit Daten (Tabelle3) auf Blatt Y. Tabelle6 beginnt mit der Überschrift in der 4. Zeile, Tabelle3 in der 3. Zeile. Auf Blatt X gibt es bei I2 ein Dropdown mit den Jahreszahlen und bei I3 ein Dropdown mit den Gruppenbezeichnungen.

    @Anton:
    Vielen Dank für die ausführliche Erklärung und die Zeit, mir bei dem Problem zu Helfen. Ich muss mir das Ganze noch mal zuhause in ruhe durch lesen, um es zu verstehen.
    @all:
    Eine Frage habe ich aber noch. Es gibt in der Tabelle3 noch eine Tabellenspalte die [BETRAG] heißt, in der Einnahme und Kosten aufgelistet sind.
    Jetzt würde ich gerne auch noch eine dritte Bedingung einbauen, ob der Betrag >0 ist.
     
    dustdancer, 6. Oktober 2014
    #3
Thema:

Formelverknüpfung

  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden