Microsoft Office Tutorials and References
In Depth Information
5.5.2
Jetzt wird’s dynamisch
Jetzt kann es aber auch vorkommen, dass wir den Bereich von:bis nicht immer von
vornherein statisch angeben können. In Kapitel 7 Sparen & Abstottern werden Sie auf
den genialen Zeitstrahl treffen. Er beginnt im Jahr 1 und endet im Jahr n . Allerdings
soll n über eine Zelle variabel gehalten werden, um so ohne weitere Änderungen
verschiedene Szenarien durchspielen zu können.
Um diesen dynamischen Zeitstrahl zu generieren, benötigen wir also ein Konstrukt wie
ZEILE("1:"&A1)
wenn in Zelle A1 die Anzahl der Jahre (n) steht. Das funktioniert aber leider nicht, da
die Funktion ZEILE als Parameter den Datentyp Bezug benötigt, die Verkettung
"1:"&A1 jedoch den Datentyp Text liefert. Also benötigen wir eine Funktion, die aus
dem Datentyp Text einen gültigen Bezug formt. Unseren Balzruf hat die Funktion
INDIREKT erhört:
INDIREKT("1:"&A1)
liefert als Rückgabewert den geforderten Datentyp Bezug . Steht in A1 beispielsweise
die Zahl 5, ergibt die Verkettung:
=INDIREKT("1:"&A1) = INDIREKT("1:5")
Jetzt verschachteln wir dies noch mit ZEILE:
=ZEILE(INDIREKT("1:"&A1))
=ZEILE(INDIREKT("1:5")) = {1;2;3;4;5}
und schon haben wir das gewünschte Array, gleichbedeutend mit ZEILE(1:5), jedoch
mit dem entscheidenden Unterschied, dass wir die Array-Größe dynamisch gestalten
können. ZEILE und INDIREKT – das ist die perfekte Ehe! Diese Dynamisierung eines
Arrays sollten Sie sich unbedingt merken – Sie werden sie an vielen Stelle gebrau-
chen können!
Der Vollständigkeit halber sei noch erwähnt, dass dasselbe Spielchen auch mit der
Funktion SPALTE funktioniert. Steht in Zelle A1 beispielsweise der Buchstabe D, dann
erhalten Sie ein horizontales Array von 1 bis 4 mit:
=SPALTE(INDIREKT("A:"&A1))
=SPALTE(INDIREKT("A:D")) = {1.2.3.4}
Search JabSto ::




Custom Search