Frage von asdf241, 22

Wie verknüpfe ich Excel Formeln(!) über mehrere Blätter hinweg?

Ich habe mehrere Blätter die jeweils einen Monat auswerten. Jedes Blatt soll die gleichen Operationen ausführen,sprich:

an der gleichen Stelle die gleichen Formeln bzw den gleichen Text enthalten

welche dann die individuellen Einträge des Monats verarbeiten. Ich ändere noch sehr viel und muss dann händisch jeden Monat anpassen. Für Text-Dateien kann ich mit ='Monat 1'!G2 die Werte von G2 eines Monats für alle anpassen.

Wie geht das für Formeln? Wenn ich den gleichen Operator verwende wird der Wert aus "Monat 1" zurückgegeben, ich möchte jedoch die Formel übernehmen. INDIREKT hat mir bisher nicht geholfen, da der Bezug der Formel im jeweiligen Blatt ja der gleiche ist.

Danke für eure Hilfe!

PS: Gibt es einen Funktion die Formatierung wie fette Schrift oder Hintergrundfarbe mit übernehmen?

Expertenantwort
von Iamiam, Community-Experte für Excel, 12

zunächst zum 2. Teil: Per Formel kannst Du kein Format übernehmen. es gibt lediglich den Format-Pinsel im Menü Start, mit dem Du die Formate einzelner Zellen, ganzer Zellbereiche osder sogar ganzer Blätter übertragen kannst. Ganzer Blätter: markierst du ein Blatt am "Blattkopf" (da, wo sich links oben Spaltenbezeichnungen A, B, C... und Zeilennummern 1, 2, 3... treffen) und überträgst dann das Format nach A1 eines anderen blattes, werden sogar Spaltenbreiten und Zeilenhöhen übertragen.

Ansonsten gibt es noch die bedingte Formatierung oder die Alternative Makro (dazu müsste man näheres über den Aufbau Deiner Datei und ihrer Blattnamen wissen, wenn das halbwegs flexibel bleiben soll)

Zum 1. Teil:

Wenn Deine Blattnamen wie eine Zahl oder wie ein Datum auswertbar sind, geht das, wenn es auch sehr sperrig werden kann.

Ich demonstriere das mal an der Entwicklung einer Formel für Blattnamen wie Dez.15, Jan.16, Feb.16: (in Feb.16):

  • =ZELLE("dateiname";D1) liefert LW:\Pfad\[Dateiname]Feb.16
  • =FINDEN("]";ZELLE("dateiname";D1);1)+1 liefert die 6-letzte Stelle
  • =TEIL(ZELLE("dateiname";D1);FINDEN("]";ZELLE("dateiname";D1);1)+1;999) liefert Feb.16
  • diese Formeln gehen universell für alle Längen von Blattnamen
  • das gleiche Ergebnis würde =rechts(ZELLE("dateiname";D1);6 liefern
  • das aber nur, wenn der Blattname 6 Stellen lang ist
  • Feb.16 wird von xl als 1.2.16 interpretiert
  • =EDATUM(TEIL(ZELLE("dateiname"D1);FINDEN("]";ZELLE("dateiname";D1);1)+1;999);-1) liefert die Datumszahl für den 1. Jan.16
  • =Text(EDATUM(TEIL(ZELLE("dateiname"D1);FINDEN("]";ZELLE("dateiname";D1);1)+1;999);-1);"MMM;JJ")
  • etwas kürzer wieder =TEXT(EDATUM(RECHTS(ZELLE("dateiname";D1);6);-1);"MMM.JJ"), das ist Jan.16
  • =ZELLE("Adresse";D1) liefert $D$1 (aber das absolut ist eigentlich kein Absolut, weil in Zelle("dateiname";D1) relativ eingegeben, das bleibt also kopierbar!
  • =INDIREKT(TEXT(EDATUM(TEIL(ZELLE("dateiname";D1);FINDEN("]";ZELLE("dateiname";D1);1)+1;999);-1);"MMM.JJ")&"!"&ZELLE("Adresse";D1))  liefert den Inhalt der Zelle D1 des Vormonats.
  • etwas kürzer wieder: =INDIREKT(TEXT(EDATUM(RECHTS(ZELLE("dateiname";D1);6);-1);"MMM.JJ")&"!"&ZELLE("Adresse";D1))

Das geht auch über Jahresgrenzen hinweg, die Formel -kopiert nach Jan.16- liefert den Bezug auf D1 im Dez.15

Wie du siehst, es geht, wenn auch sehr umständlich. Für xl sind diese vielfach geschachtelten Formeln kein Problem - auch nicht in größerer Zahl - , nur für unser Hirn, das andere Strukturen gewohnt ist. Da WIR aber nur UNSER Hirn haben, bleibt es FÜR UNS ein Problem.

Du kannst die zB letzte Formel kopieren und in A1 eines Blattes zB Mrz.16 einfügen und musst daran nur das D1 in Zelle("Adresse";D1) - also das ganz hinten - nach Wunsch anpassen (ein Blatt Feb.16 muss dann natürlich existieren.

Keine passende Antwort gefunden?

Fragen Sie die Community

Weitere Fragen mit Antworten