von Eia » Sa, 24.03.2007 18:36
Ich bin immer noch nicht sicher, ob ich Dich richtig verstehe:
Du möchtest den Aufbau einer Formel zentral ändern, die in verschiedenen Tabellen verwendet wird?
Dann könnten vielleicht Namen etwas für Dich sein. Und zwar Namen für Bereiche, wie auch Namen für Formeln.
Bereiche:
Wenn Du z.B. dem Bereich:
$Berechnungen.$Y$1:$Z$100
einen Namen gibst (Einfügen/Namen), sagen wir: BerechnungenYZ, dann könntest Du die SVERWEIS-Formel so schreiben:
SVERWEIS($B19;BerechnungenYZ;1;0)
Sobald Du nun unter Einfügen/Namen die Ausdehnung von BerechnungenYZ änderst, wirkt sich das automatisch bei allen SVERWEIS-Formeln aus, die diesen Namen verwenden.
Formeln:
Die obige Verweisformel :
SVERWEIS($B19;BerechnungenYZ;1;0)
kannst Du nun ebenfalls unter einem Namen abspeichern. Dazu rufst Du wieder auf:Einfügen/Namen
als Namen vergibst Du nun meinetwegen:
VerweisAufBerechnungenYZ
und unter "Zugeordnet zu" gibst Du die Formel ein (ohne =-Zeichen):
SVERWEIS($B19;BerechnungenYZ;1;0)
Nun füge in eine Zelle ein:
=VerweisAufBerechnungenYZ
(Du musst 2mal Enter drücken um die Formel abzuschliessen)
Gehe dann wieder auf Einfügen/Namen, wähle die eben erstellte Formel aus, ändere sie z.B. auf:
SVERWEIS($B19;BerechnungenYZ;1;0)
und nun müsste überall, wo =VerweisAufBerechnungenYZ steht, der Bezug geändert worden sein, egal in welchen Tabellen.
Geht das in die Richtung, die Du Dir vorstellst?
Ob Du nun diese Teilformel in der Zelle anwendest:
=WENN(ISTNV(VerweisAufBerechnungenYZ);"";$D19+$E19+$G19)
oder die Gesamtformel als Namen abspeicherst, kommt auf die Situatin an.
Das Problem bei Namen sind oftmals die Zellbezüge. Wenn Du eine Zelladresse in einer Namensdefinitin hast, ist die dadurch immer absolut, wird also beim Kopieren nicht angepasst. Man muss dass dann irgendwie umgehen, z.B. mit sowas:
Angenommen, Du brauchst in einer Formel immer die Zelle links neben der aktuellen Zelle, also etwa in B1: =A1+1
Dann erstellst Du einen Namen "Links1" mit dieser Formel:
INDIREKT(ADRESSE(ZEILE();SPALTE()-1))
und in B1 kannst Du dann stattdessen schreiben: = Links1+1. Nun kannst Du B1 getrost nach unten ziehen, in jeder Zeile wird wieder der richtige Zellbezug verwendet.
mfG
Ich bin immer noch nicht sicher, ob ich Dich richtig verstehe:
Du möchtest den Aufbau einer Formel zentral ändern, die in verschiedenen Tabellen verwendet wird?
Dann könnten vielleicht Namen etwas für Dich sein. Und zwar Namen für Bereiche, wie auch Namen für Formeln.
Bereiche:
Wenn Du z.B. dem Bereich:
$Berechnungen.$Y$1:$Z$100
einen Namen gibst (Einfügen/Namen), sagen wir: BerechnungenYZ, dann könntest Du die SVERWEIS-Formel so schreiben:
SVERWEIS($B19;BerechnungenYZ;1;0)
Sobald Du nun unter Einfügen/Namen die Ausdehnung von BerechnungenYZ änderst, wirkt sich das automatisch bei allen SVERWEIS-Formeln aus, die diesen Namen verwenden.
Formeln:
Die obige Verweisformel :
SVERWEIS($B19;BerechnungenYZ;1;0)
kannst Du nun ebenfalls unter einem Namen abspeichern. Dazu rufst Du wieder auf:Einfügen/Namen
als Namen vergibst Du nun meinetwegen:
VerweisAufBerechnungenYZ
und unter "Zugeordnet zu" gibst Du die Formel ein (ohne =-Zeichen):
SVERWEIS($B19;BerechnungenYZ;1;0)
Nun füge in eine Zelle ein:
=VerweisAufBerechnungenYZ
(Du musst 2mal Enter drücken um die Formel abzuschliessen)
Gehe dann wieder auf Einfügen/Namen, wähle die eben erstellte Formel aus, ändere sie z.B. auf:
SVERWEIS($B19;BerechnungenYZ;[b]1[/b];0)
und nun müsste überall, wo =VerweisAufBerechnungenYZ steht, der Bezug geändert worden sein, egal in welchen Tabellen.
Geht das in die Richtung, die Du Dir vorstellst?
Ob Du nun diese Teilformel in der Zelle anwendest:
=WENN(ISTNV(VerweisAufBerechnungenYZ);"";$D19+$E19+$G19)
oder die Gesamtformel als Namen abspeicherst, kommt auf die Situatin an.
Das Problem bei Namen sind oftmals die Zellbezüge. Wenn Du eine Zelladresse in einer Namensdefinitin hast, ist die dadurch immer absolut, wird also beim Kopieren nicht angepasst. Man muss dass dann irgendwie umgehen, z.B. mit sowas:
Angenommen, Du brauchst in einer Formel immer die Zelle links neben der aktuellen Zelle, also etwa in B1: =A1+1
Dann erstellst Du einen Namen "Links1" mit dieser Formel:
INDIREKT(ADRESSE(ZEILE();SPALTE()-1))
und in B1 kannst Du dann stattdessen schreiben: = Links1+1. Nun kannst Du B1 getrost nach unten ziehen, in jeder Zeile wird wieder der richtige Zellbezug verwendet.
mfG