PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Excel Kreuztabelle/Zellenselektion per Formel.. oder so


xenomat
2009-04-25, 09:13:20
Morgen

Folgende "Herausforderung" (hoffe das versteht einer) :D :

Ich hab eine Liste und eine Kreuztabelle (Spalte=Länge, Zeile=Typ, Kreuzwert=Anzahl). In der Liste möchte ich nun Typ und Länge Wählen (Dropdown schon gemacht), die Anzahl eintragen, und diese Anzahl soll dann von dem in der Kreuztabelle eingetragenen Wert abgezogen werden.
Wie bekomme ich diese Zellenselektion hin, wenn ich Typ und Länge gewählt habe, dass die richtige Zelle in der Tabelle gewählt wird wovon die Anzahl dann abgezogen wird?

:|

http://grumf.de/tabelle.png

Ich bin kein Excel-Experte, es wäre nett wenn mir jemand hierbei helfen könnte. Ich durchsuche auch das Netz, aber entsprechende Ergebnisse zu finden ist schwierig.

Danke schon mal für Eure Mühe!

Gruß
xenomat

Gnafoo
2009-04-25, 17:56:08
INDEX(Bereich, Zeilennummer, Spaltennummer) kann dir aus deiner Tabelle einen bestimmten Eintrag herausfiltern. Mit VERGLEICH(Suchname, Bereich, 0) kannst du die Zeilen- bzw. Spaltennummer zu einem Eintrag ausfindig machen.

Beispiel, wenn die Daten in C4:E7 stehen, die Spaltenüberschriften in C3:E3 und die Zeilenüberschriften in B4:B7, dann geht folgendes:

=INDEX(C4:E7;VERGLEICH(G3;B4:B7;0);VERGLEICH(H3;C3:E3;0))

Wobei G3 und H3 die Überschriften von Spalte und Zeile enthalten, die gesucht werden sollen. Ist zwar möglicherweise nicht der einfachste Weg, funktioniert aber zumindest bei mir wunderbar.

Edit: Hm ich seh grad, dass ich dich vollkommen falsch verstanden habe :redface:.Lass mich nochmal drüber nachdenken :D.

Gnafoo
2009-04-25, 18:27:04
Okay probier es einmal damit:

http://www.abload.de/img/excelfn3a.png (http://www.abload.de/image.php?img=excelfn3a.png)

Zu beachten ist dabei, dass die Formel mit strg+shift+return eingegeben werden muss, da es sich um eine Array-Formel handelt.

Was passiert ist folgendes: Excel vergleicht erst einmal alle Werte in der Grünen Spalte mit der Überschrift der jeweiligen Zeile ($G$4:$G$15=$B10). Dabei kommt ein Array raus (sowas wie {Wahr, Falsch, Wahr}). Das selbe passiert mit der Spaltenüberschrift ($H$4:$H$15=D$9). Beide Arrays werden Multipliziert, d. h. da kommt dann so etwas raus wie {1, 0, 0}, wobei nur eine 1 herauskommt, wenn Spalten- und Zeilenüberschrift übereinstimmen (die Multiplikation entspricht einem logischen UND).

Für die Einträge in dem Array, bei denen 1 rauskommt (was als Wahr interpretiert wird) sucht Excel jetzt mit dem WENN den entsprechenden Wert aus der Spalte I$4:$I$15 heraus, oder gibt 0 zurück, wenn an der Stelle im Array eine 0 steht. Aus {1, 0, 0} wird so {2, 0, 0}. Das Ergebnis wird aufsummiert und vom Tabelleneintrag abgezogen.