Formelnkopieren mit Bezügen in andere sheets

ich kopiere folgende Formel indem ich sie nach unten ziehe:
=‚tabelle1‘!B$11
und erhalte:
=‚tabelle1‘!B$11.
Ich möchte aber:
=‚tabelle2‘!B$11.
Kann ich das überhaupt?

Hallo,
mit dem „nach unten ziehen“ kannst du keinesfalls die in der Formel vorgegebene Tabelle ändern bzw. „durchzählen“. Woher soll denn Excel auch wissen, was du haben willst? Du kannst die Formeln einzeln manuell ändern (F2 drücken, falls eine Zelle bereits eine Formel enthält) oder du kannst eine VBA-Prozedur programmieren, die die gewünschten Formeln in die Zellen schreibt.

Hallo,

leider verfeuege ich nur ueber einfache Grundkenntnisse im Bereich Excel und kann daher bei der Bantwortung dieser Frage nicht behilflich sein.

Chris

Mir ist leider keine passende Lösung bekannt. Eventuell unter www.herber.de im Forum anfragen über evtl. VBA-Lösung.
Gruß Peter

Die Logik der relativen Bezüge und damit das Kopieren lassen m.E. diesen Vorgang so nicht zu. Wie würde Dein Kopiervorgang denn weitergehen? Es käme ja dann etwa „=‚tabelle3‘!B$11“ usw.

Gruß
kp

Hallo,

das nach unten (oder oben) Ziehen ändert den Bezug für die Zeile, d.h. aus 11 wird 12, 13 u.sw., es sei denn, das $ steht davor, dann bleibt der Zeilenbezug gleich - wie bei deinem Beispiel.
Das Ziehen nach Rechts (oder Links) ändert den Spaltenbezug (also aus B wird C, D, E usw), es sei denn $ steht vor der Spalte.
Der Bezug für den Reiter (bei dir tabelle1) wird durch das Ziehen nicht (direkt) verändert.

Es gibt aber einen Weg ans Ziel, er ist aber etwas kompliziert. Ich versuche es im folgenden zu beschreiben.
Ich geh hierbei davon aus, dass du jeweils die Inhalte der Zelle B11 aus den Tabellenblättern tabelle1, tabelle2, etc. in einem weiteren Tabellenblatt darstellen willst. Nennen wir dieses Tabellenblatt mal „Zusammenfassung“.
Ich nehme weiter an, dass die erste Formel in Tabellenblatt „Zusammenfassung“ in Zelle B2 steht.

Schreibe in die Spalte A beginnen mit A2 die Zahlen 1,2,3,4,5… (soweit du „tablle[n]“ Blätter hast).
In B2 kommt folgende Formel =INDIREKT(„Tabelle“&A2&"!"&„B11“).
Diese Formel kannst du dann nach unten ziehen. Dann wird daraus z.B. in B3 die Formel =INDIREKT(„Tabelle“&A3&"!"&„B11“).
Zur Erklärung: =„Tabelle“&A2&"!"&"B11 wird in der Zelle B2 aufgelöst in den Text „Tabelle1!B11“, das INDIREKT aussen herum interpretiert den Text als eine Adresse und gibt den Wert der adressierten Zelle zurück.

Falls deine Aufgabenstellung von meinen Annahmne abweicht, solltest du aber in der Lage sein, die Idee so zu modifizieren, dass es klappt.
Idee: Adresse als Text aufbauen und mit INDIREKT zur echten Adresse machen.

Variante: Statt der Zahlen 1,2,3, … in die Spakte B reinzuschreiben, direkt den Tabellennamne also tabelle1, tabelle2, … (kann auch ganz anders heißen) und die Formel verändert sich dann in =INDIREKT(A2&"!"&„B11“)

Auch die fest codierte „B11“ läßt sich natürlich diurch sinnhafte Formeln variable gestalten.

Bei Nachfragen, gerne nochmal antworten.
Gruß
Volker

Hallo, ob das mit dem automatischen Ausfüllen überhaupt geht kann ich dir nicht sagen.
Das ‚$‘ zeichen kennzeichnet normalerweise Felder die hochgezählt werden. Dann hättest Du aber in der zweiten Zelle hinten $B12 stehen haben müssen?
Wieviele Zellen hattest Du markiert beim herunterziehen?
Probiere mal in der zweiten Zeile einmal das Tabelle1 in Tabelle2 zu ändern, markiere dann die beiden Zellen und zieh diese herunter. Vielleicht klappt es dann. Für Reihen werden immer mindestens zwei Zellen benötigt um die Schrittweite zu ermitteln.

Gruß Armin

Hallo lefrie,

es ist mir keine Funktion in Excel bekannt, die Formeln in dieser Art kopieren kann.

Aber je nach dem, was Du mit den Daten weiter vor hast, kann ich Dir die Verarbeitung in einer 3D-Formel (3D-Bezug) vorschlagen. Wie das funktioniert ist in der Excel-Hilfe (F1 - suche nach „3D-Formel“) recht anschaulich beschrieben.
Damit kannst Du z.B. die Daten über alle Tabellenblätter hinweg addieren („Summe“) oder beliebige andere Berechnungen damit durchfüren.

Gruß Uli

Hi,
das geht nur mit VBA-Programmierung. Da sperrt sich Excel um nicht als Datenbank mißbraucht zu werden.

Für die schnelle Hilfe kannst du die Formel kopieren, dann den Bereich markieren und über „Ersetzen“ im Menüpunkt Bearbeiten die Tabelle1 gegen Tabelle2 ändern für den markierten Bereich austauschen.

Gruß
Earny

Mir ist leider andere Lösung als die manuelle Änderung bekannt. So klappt es nicht.

Ggf. vielleicht ein Makro schreiben/aufnehmen. Falls die Funktion häufiger angewendet werden muss.

Hallo Lefrie,
So kommst Du nicht zum gewünschten Ergebnis. Dein „ziehen“ weist Excel lediglich an, den Bezug auf die Zelle B11 in Tabelle1 zu kopieren und dabei an Zeile 11 festzuhalten (absoluter Bezug auf die Zeile mit $).
Gruß Maria

Durch Suchen und Ersetzen kannst Du das Tabellenblatt austauschen.
Suche Tabelle 1, ersetze Tabelle 2. Wenn die Zellbezüge gleich sind, dann brauchst Du Ihn nicht mitschreiben.
Gruß
Frank

Hallo
beim kopieren im gleichen Register funktioniert das automatische zählen von Tab.1 zu Tab.2 nicht automatisch.
Aenderung für Tab.2 selbst ändern.
Gruss PAUL

Hallo lefrie,
das geht nicht. tabelle1 und tabelle2 sind doch völlig verschiedene Blattbezeichner. Excel modifiziert nur Zeilen- und Spalten-Nummern.
Freundliche Grüße und alles Gute im neuen Jahr
BFR

ich kopiere folgende Formel indem ich sie nach unten ziehe:
=‚tabelle1‘!B$11
und erhalte:
=‚tabelle1‘!B$11.
Ich möchte aber:
=‚tabelle2‘!B$11.

sorry, da habe ich keine Idee dazu.
Ich weiß auch nicht, ob das (ohne Zwischenkopieren oder Strings-Zusammenbauen) gehen könnte.
Ciao
Tobi

Hallo,
direkt klappt das nicht, aber über einen kleinen Workaround kannst Du Excel austricksen:

In Zelle A1 schreibst Du:
tabelle1
Das kannst Du dann nach unten ziehen/kopieren und daraus wird tabelle2, tabelle3, …
In Zelle B1 benutzt Du dann die Formel „Indirekt“:
=Indirekt("’"&A1&"’!B$11")
Diese Formel kannst Du auch nach unten ziehen/kopieren.

In Spalte B stehen dann die von Dir gewünschten Bezüge/Werte aus den einzelnen Sheets/Tabellen.

Freundliche Grüsse,

e-a-s-y

Moin,

das geht meines Erachtens nicht, da eine Tabelle kein relativer Bezug ist bzw. sein kann. Hier können Dir ggf. nur Kollegen helfen ,die Makros progammieren können.

Gruß
kiter

Hallo lefrie,

ganz so einfach geht es nicht. Man kann aber durchaus den Tabellenbezug variabel halten. Du könntest eine weitere Spalte spendieren und schreibst einfach den Text tabelle1 in die erste Zelle. Durch Ziehen nach unten erhältst Du tabelle1, tabelle2, tabelle3 usw… Die nächste Spalte enthält den Zellenbezug als Text, also !B$11. In der 3. Spalte erhältst Du mit der Formel =INDIREKT(VERKETTEN(A1;B1) den Wert aus Tabelle 1. Diese Formel kannst Du wie gewohnt durch Ziehen nach unten kopieren.

VG, Mertel

Hallo lefrie,

ich mach das immer so umständlich, dass ich das per Hand korrigiere. Nen Automatismus kenn ich dafür nicht.

Christin