Hallo Merlinchen,
EDV 310807 Kre 130907 EDV 250907 WiSo 280907
Name % Note % Note % Note % Note
Berta 55,0 4,0 4,0 74,0 4,0 74,0 4,0
Frieda 100,0 1,0 1,0 77,0 1,0 77,0 1,0
Heinz 76,0 3,0 3,0 85,0 3,0 85,0 3,0
oben abgebildete Tabelle habe ich in Excel.
Die Bezeichnungen in der obersten Zeile (z. B. EDV 310807)
sind auch die Bezeichnungen der einzelnen Tabellenblätter, aus
denen die Daten in diese Tabelle zusammengezogen werden.
In der Zelle, in der jetzt die Zahl 55,0 steht (also die
Prozent von Berta in EDV 310807) steht folgende Funktion:
=WENN(ISTZAHL(SVERWEIS($A5;‚EDV 310807‘!A8:smiley:27;2));SVERWEIS($A5;‚WiSo 280907‘!A8:smiley:27;3;FALSCH); " ")
Den Teil „‚EDV 310807‘!A8:smiley:27“ würde ich gerne automatisch
erstellen lassen. Ich habe es bereits einzeln versucht mit
Verketten(B3;!a8:d27). Das funktioniert auch genau so, wie ich
es will. Aber kaum baue ich den Teil in den Sverweis ein,
kriege ich entweder eine leere Zelle zurück oder „Fehler“.
ich hab mir die Formel noch mal angesehen. Folgendes ist mir aufgefallen:
Die Formel prüft im Blatt „EDV…“, ob ein bestimmter Eintag eine Zahl ist, holt dann aber aus einen anderen Wert aus dem Blatt „Wiso…“
Ich bin mir nicht sicher, ob das so sein soll. Ich vermute, dass geprüft werden soll, ob dort ein Wert steht, wenn ja, soll genau dieser Wert ausgegeben werden, sonst nichts. Dann würde der Fehlerwert #NV unterdrückt werden.
Im Blatt „EDV…“ steht der %-Wert in der 2. Spalte , im Blatt „Wiso…“ in der 3. Spalte? Könnte sein, dann sind die Blätter nicht gleich aufgebaut. Das weiß ich nicht.
Vermutlich soll die Formel einfach nach rechts in die Spalten kopiert und nach unten über die Zeilen ausgefüllt werden.
Dazu müssen die Bezüge angepasst werden. In der Formel ist zwar das Suchkriterium in der Spalte „festgenagelt“ aber nicht die Matrix selbst.
Damit wäre Reinhards Vorschlag noch anzupassen. Für das Kopieren nach rechts (von B5, in D5, in F5, … ). Die Namen der Tabellenblätter stehen in B1, D1, F1, …
aus:
=WENN(ISTZAHL(SVERWEIS($A5;indirekt(B1&"!A8:smiley:27");2;0));SVERWEIS($A5;‚WiSo 280907‘!A8:smiley:27;3;FALSCH); " ")
wird dann:
=WENN(ISTZAHL(SVERWEIS($A5;indirekt(B$1&"!$A$8:blush:D$27");2;0));SVERWEIS($A5;‚WiSo 280907‘!$A$8:blush:D$27;3;FALSCH); " ")
(für den Fall, dass tatsächlich die Blätter und die Spalten gewechselt werden).
Zum Kopieren nach unten Formel in B5:
=WENN(ISTZAHL(SVERWEIS($A5;indirekt(B$1&"!$A$8:blush:D$27");2;0));SVERWEIS($A5;‚WiSo 280907‘!$A$8:blush:D$27;3;FALSCH); " ")
Blattname steht in B1
Für den Fall, dass du nur die Ausgabe von #NV verhindern willst und die Wenn-Funktion zum Unterdrücken des Fehlerwertes benutzt, wäre die gleiche Formel in B5 (zum Ausfüllen nach unten) und die Matrix auch im Dann_Wert automatisch angegeben werden soll:
=WENN(ISTZAHL(SVERWEIS($A5;indirekt(B$1&"!$A$8:blush:D$27");2;0));(SVERWEIS($A5;indirekt(B$1&"!$A$8:blush:D$27");2;0));"")
oder
wie bei meinem Excel (das Blatt muss in einfachen Anführungsstrichen angegeben werden)
=WENN(ISTZAHL(SVERWEIS($A5;INDIREKT("’"&$B$1&"’!$A$8:blush:D$27");2;0));(SVERWEIS($A5;INDIREKT("’"&$B$1&"’!$A$8:blush:D$27");2;0));"")
zum Kopieren nach rechts wird aus INDIREKT("’"&$B$1&"’! dann
INDIREKT("’"&B$1&"’!
Lieben Gruß
Marion