Hallo zusammen,
also ohne jemandem auf die Füße treten zu wollen, es ist ja lieb, dass ihr mir
Alternativen vorschlagt, aber die brauche ich leider nicht. Ich kenne mich durchaus sehr gut in Excel aus denke daher auch, sehr genau zu wissen, was ich brauche. Die Datei ist so wie sie ist und das hat auch alles seine Gründe (ob die gut oder schlecht sind, sei mal dahingestellt). Eine Formel der Art
Code:
=SUMME('70101:70110'!A2)
kann ich zum Beispiel deshalb nicht gebrauchen, weil ich je nach Datei auch mal mehrere Tabellenblattbereiche voneinander abgrenzen können muss. Ich muss daher definieren können, welcher Bereich welche Tabellenblätter umfasst. Das kann ich nur über meine Tabelle. Zudem haben rund 20 Personen Zugriff auf die Dateien und sortieren für ihre abteilungsinternen Zwecke auch Tabellenblätter um. Mein Anspruch ist es, Excellösungen zu konzipieren, die gegen Anwenderfehler gefeit sind und die immer funktionieren. Alles andere sorgt früher oder später für riesiges Chaos - und ratet mal, wer dann Schuld daran ist. ;) Eure sonstigen Einwände und Änderungsvorschläge sind ja berechtigt, aber ich habe die Dateien auch nur "geerbt" und kann sie kurzfristig nicht alle ändern - für das vorangestellte Problem benötige ich aber schon jetzt eine Lösung. Trotzdem noch mal danke an alle Tippgeber bisher! :)
Zurück zum Thema, ich bin jetzt auf anderem Weg einer möglichen Lösung doch sehr nahe gekommen, mir fehlt aber der wichtige letzte Schritt. Dieser hat mit der Funktion SUMMENPRODUKT zu tun, mit der ich zugegebenermaßen bisher recht wenig zu tun hatte, vielleicht ist die finale Lösung daher sogar recht einfach - oder ich bin ganz auf dem Holzweg.
Zum Nachbauen (ca. 30 Sekunden):
Gegeben seien drei Tabellenblätter mit beliebigen Namen, die je eine Zahl in F13 stehen haben und ein viertes Tabellenblatt mit einer Tabelle A1:B3, wobei Spalte A die Zahlen 1 bis 3 enthält und Spalte B die Namen der drei anderen Tabellenblätter.
Die folgende Formel sollte mir nun die Summe der drei Werte aus F13 auswerfen:
=SUMMENPRODUKT(INDIREKT("'"&SUMMEWENN(A1:A3;ZEILE($1:3);B1:B3)&"'!F13"))
Der letzte Berechnungsschritt sieht laut Formelanalyse so aus:
SUMMENPRODUKT({"'70101'!F13";"'70102'!F13";"'70103'!F13"}) (die 70...er-Nummern sind meine Tabellenblätter)
Danach wird das Ergebnis 0 ausgegeben - warum? Muss ich das Summenprodukt noch gegen ein zweites Array multiplizieren? Ich krieg das nicht zusammen.
Ich habe auch SUMME, INDIREKT und Arrayformatierung ausprobiert, aber bisher ohne Erfolg.