Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Blattnamen in langer Formel autom ändern

Blattnamen in langer Formel autom ändern
04.08.2020 13:10:57
Steffi
Hallo!
Ich bitte um Hilfe, denn mein Kopf raucht bereits ;-)
Ich habe eine große Datentabelle in welcher ich verschiedene Berechnungsstrategien vergleiche im Blatt Juni2020.
Die hinterlegten Berechnungsformeln der verschiedenen Strategien mit Bezug auf ein anderes Tabellenblatt sind im jeweiligen Berechnungsschritt immer gleich. Die zur weiteren Berechnung benötigten Daten stehen auf unterschiedlichen Blättern.
Ich versuche nun eine Lösung zu finden, in der ich nicht händisch alle Tabellenblattnamen in den Formeln ändern muss.
Ich will dass wenn ich in in J2, O2 und T2 den tabellenblattnamen ändere, dieser in der Formel automatisch geändert wird.
Wie kann ich dies bewerkstelligen sodass ich nicht immer alle Blattnamen händisch ändern muss.
Danke vielmals :-)
Anzeige

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
siehe INDIREKT() owT
04.08.2020 13:12:56
Rudi
AW: siehe INDIREKT() owT
04.08.2020 13:22:16
Steffi
Lieber Rudi :-)
Wie funktioniert indirekt bei solch einer langen Formel? Wo muss ich das hinsetzen? statt dem tabellennamen?
=WENN($D4=-1;-SUMME(System_BWStandard!$C$5:$C$9);WENN($D4>=System_BWStandard!$B$9; SUMMENPRODUKT(System_BWStandard!$B$5:$B$9;System_BWStandard!$C$5:$C$9) -SUMME(System_BWStandard!$C$5:$C$9);WENN($D4>=System_BWStandard!$B$8; SUMMENPRODUKT(System_BWStandard!$B$5:$B$8;System_BWStandard!$C$5:$C$8) -SUMME(System_BWStandard!$C$5:$C$8);WENN($D4>=System_BWStandard!$B$7; SUMMENPRODUKT(System_BWStandard!$B$5:$B$7;System_BWStandard!$C$5:$C$7) -SUMME(System_BWStandard!$C$5:$C$7);WENN($D4>=System_BWStandard!$B$6; SUMMENPRODUKT(System_BWStandard!$B$5:$B$6;System_BWStandard!$C$5:$C$6) -SUMME(System_BWStandard!$C$5:$C$6);WENN($D4>=System_BWStandard!$B$5; PRODUKT(System_BWStandard!$B$5:$C$5)-System_BWStandard!$C$5;"Tor vor Q"))))))
Anzeige
AW: siehe INDIREKT() owT
04.08.2020 13:34:46
Daniel
Hile
Excel kann Formeln bis c.a. 4000 Zeichen verarbeiten.
Wenn der Blattname "System_BWStandard" variabel sein und somit aus einer Zelle ausgelesen werden soll, dann musst du jeden Zellbzug auf dieses Blatt, dh das:
System_BWStandard!$C$5:$C$9
Durch folgenden Ausdruck ersetzen, die Zelle mit dem Blattnamem "System_BWStandard" sei A1:
Indirekt("'"&$A$1&"'!C5:C9")
Das Hochkomma ist, damit das ganze auch funktioniert, wenn der Blattname mal ein Leerzeichen enthält.
Ansonsten ist beim Bearbeiten von solchen "Monsterformeln" öfters ganz hilfreich, dass Ersetzen auch mit Formeln funktioniert, das spart manchmal viel Schreibarbeit.
Was willst du denn berechnen?
Vielleicht geht das ja auch einfacher.
Gruß Daniel
Anzeige
AW: siehe INDIREKT() owT
04.08.2020 13:46:52
Steffi
Ich habe vorne Spieldaten stehn. Bei welcher Quote veil das Tor. In den hinterlegten strategien welche zum Vergleich berechnet werden sollen enthalten verschiedene Splits bei unterschiedlichen einstiegsquoten.
Es soll nun verglichen werden bei welcher Q das tor viel und dementsprechend der gewinn berechnet werden, abhängig davon welche splits gesetzt werden konnten.
Mit meiner "Monsterformel" stelle ich das suchen und vergleichen sozusagen nach, da ich kein VBA schreiben kann ;-)
WEnn die Einstiegsquote < als die Torquote dann nimm das summenprodukt dieser splits, ansonsten ... so geht die Formel von unten nach oben durch und berechnet welcher Split gesetzt werden konnt. Ich weiß sehr umständlich gelöst, aber dazu haben meine Excelkentnisse mal gereicht :-)
lg
Anzeige
AW: siehe INDIREKT() owT
04.08.2020 13:52:52
Steffi
https://www.herber.de/bbs/user/139456.xlsx
hier drin ersichtlich was ich damit machen mag. Mit welcher Strategie aufgrund der vorhandenen Spieldaten hätte man den meisten Profit. Das wär die Fragestellung dazu sozusagen :-)
lg Steffi
Anzeige
strg+h?
04.08.2020 13:27:24
Rudi
Hallo,
markiere z.B. K4:K34 und drücke strg+h. Suchen nach: bstandard; ersetzen durch: klassisch. Alle ersetzen.
620 Ersetzungen
Gruß
Rudi
AW: strg+h?
04.08.2020 13:36:41
Steffi
Danke sehr :-)
Dachte es lässt sich vl schöner und direkter irgendwie über eine namensvergabe mit dropdownmenü lösen. Das klappt dann aber wahrscheinlich nur über VBA und das muss ich erst noch lernen.
Thanks und lg Steffi
Anzeige
AW: Blattnamen in langer Formel autom ändern
04.08.2020 13:18:39
Steffi
Hallo Rudi:-)
Wie funktioniert indirekt bei solch einer langen formel?
=WENN($D4=-1;-SUMME(System_BWStandard!$C$5:$C$9);WENN($D4>=System_BWStandard!$B$9; SUMMENPRODUKT(System_BWStandard!$B$5:$B$9;System_BWStandard!$C$5:$C$9) -SUMME(System_BWStandard!$C$5:$C$9);WENN($D4>=System_BWStandard!$B$8; SUMMENPRODUKT(System_BWStandard!$B$5:$B$8;System_BWStandard!$C$5:$C$8) -SUMME(System_BWStandard!$C$5:$C$8);WENN($D4>=System_BWStandard!$B$7; SUMMENPRODUKT(System_BWStandard!$B$5:$B$7;System_BWStandard!$C$5:$C$7) -SUMME(System_BWStandard!$C$5:$C$7);WENN($D4>=System_BWStandard!$B$6; SUMMENPRODUKT(System_BWStandard!$B$5:$B$6;System_BWStandard!$C$5:$C$6) -SUMME(System_BWStandard!$C$5:$C$6);WENN($D4>=System_BWStandard!$B$5; PRODUKT(System_BWStandard!$B$5:$C$5)-System_BWStandard!$C$5;"Tor vor Q"))))))
Anzeige

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Blattnamen in langen Excel-Formeln automatisch ändern


Schritt-für-Schritt-Anleitung

  1. Vorbereitung: Stelle sicher, dass du alle Blattnamen, die du ändern möchtest, in separaten Zellen hast, z.B. in J2, O2 und T2.

  2. Formel anpassen: Verwende die INDIREKT()-Funktion, um die Blattnamen in deiner Formel dynamisch zu gestalten. Wenn dein Blattname in Zelle A1 steht, kannst du den Bezug wie folgt anpassen:

    =INDIREKT("'"&$A$1&"'!C5:C9")

    Hierbei wird der Blattname aus der Zelle A1 ausgelesen und in die Formel integriert.

  3. Anwendung der Formel: Ersetze in deiner langen Formel jeden statischen Blattnamen durch die INDIREKT()-Funktion. Zum Beispiel von:

    SUMME(System_BWStandard!$C$5:$C$9)

    zu

    SUMME(INDIREKT("'"&$A$1&"'!$C$5:$C$9"))
  4. Testen: Ändere den Wert in Zelle A1 und überprüfe, ob die Formel die Daten aus dem entsprechenden Blatt korrekt ausliest.


Häufige Fehler und Lösungen

  • Fehler: #BEZUG!
    Dieser Fehler tritt auf, wenn der Blattname in der Zelle nicht korrekt ist oder das Blatt nicht existiert. Überprüfe den Namen in der Bezugszelle.

  • Fehler: #WERT!
    Dies kann auftreten, wenn die INDIREKT()-Funktion auf einen nicht gültigen Bereich verweist. Stelle sicher, dass die Zellreferenzen korrekt sind.

  • Lösung für lange Formeln: Wenn deine Formel extrem lang ist, kann es hilfreich sein, diese in kleinere Teile zu zerlegen und die Ergebnisse in Hilfszellen zu speichern.


Alternative Methoden

  • Strg + H verwenden: Du kannst auch die Funktion "Suchen und Ersetzen" (Strg + H) nutzen, um Blattnamen in bestehenden Formeln schnell zu ändern. Dies ist jedoch weniger flexibel als die Verwendung der INDIREKT()-Funktion.

  • VBA verwenden: Wenn du mit VBA vertraut bist, kannst du ein Makro erstellen, das automatisch die Blattnamen in deinen Formeln aktualisiert. Dies erfordert jedoch grundlegende Programmierkenntnisse in Excel.


Praktische Beispiele

  • Beispiel 1: Angenommen, du hast folgende Formel in einer Zelle:

    =SUMME(System_BWStandard!$C$5:$C$9)

    Um diese dynamisch zu gestalten, ändere sie in:

    =SUMME(INDIREKT("'"&$A$1&"'!$C$5:$C$9"))

    Ändere den Blattnamen in Zelle A1, um die Ergebnisse zu erhalten.

  • Beispiel 2: Wenn du mehrere Blattnamen ändern musst, erstelle eine Liste in deinen Zellen (z.B. J2, O2, T2) und passe deine Formeln entsprechend an:

    =INDIREKT("'"&J2&"'!$C$5:$C$9")

Tipps für Profis

  • Verwende Namensbereiche: Du kannst auch Namensbereiche in Excel definieren, um die Lesbarkeit und Wartbarkeit deiner Formeln zu erhöhen.

  • Formelüberwachung: Nutze die Formelüberwachungswerkzeuge in Excel, um die Abhängigkeiten deiner Formeln zu prüfen und Fehler schneller zu finden.

  • Kommentare einfügen: Füge Kommentare in deine Formeln ein, um die Funktionsweise zu erklären, besonders wenn du mit INDIREKT() arbeitest, da dies die Wartung der Formeln erleichtert.


FAQ: Häufige Fragen

1. Wie kann ich den Blattnamen automatisch ändern?
Du kannst den Blattnamen durch die Verwendung der INDIREKT()-Funktion in Kombination mit einer Zelle, in der der Blattname steht, automatisch ändern.

2. Funktioniert dies in allen Excel-Versionen?
Ja, INDIREKT() ist in allen modernen Excel-Versionen verfügbar. Stelle sicher, dass du die korrekten Zellreferenzen verwendest.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige