Clever-Excel-Forum

Normale Version: Indirekt / Index lässt sich nicht ziehen
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Moin zusammen,

ich habe gerade folgendes Problem, dass ich eine Formel gebaut habe, die sich nicht anpasst, wenn ich sie nach unten und nach rechts ziehen möchte:

Ausgangssituation:
Ich habe 2 Tabellenblätter: "Daten" und "Berechnungen"

"Daten" ist so aufgebaut, dass in jeder Spalte (ab E21) aber nur alle 20 Zeilen Werte enthalten sind.
"Berechnungen" soll nun ab Zelle D6 eine Formel enthalten, die auf E21 von "Daten" zugreift.
In Zelle D7 sollen dann die Werte aus E41 aus dem Blatt "Daten" anfangen usw. also immer +20.
Nach rechts soll dann in E6 in "Berechnungen" F21 von "Daten" abgefragt werden usw.

Meine Formel-Ideen bisher ab Zelle D6 auf "Berechnungen":

  1. =INDIREKT("DATEN!"&"E"&Zeile($D$6)+15+((Zeile()-6)*20))
  2. =INDEX(DATEN!$E$21:$AB$1000;Zeile(D$6)-5;Spalte()-Spalte($C$6))
Wenn ich zumindest. die erste nach unten ziehen geht es. Nach rechts aber nicht, da "E" nicht hochgezählt wird.

Habt ihr eine Idee?

Danke und viele Grüße
xlsxvba
Hi,

Zitat:Wenn ich zumindest. die erste nach unten ziehen geht es. Nach rechts aber nicht, da "E" nicht hochgezählt wird.

dass es nach unten geht, ist klar? Durch ="E"&ZEILE(D6) zählt XL ab 6 beginnend die Zeilenanzahl um 1 weiter. Du könntest auch (A6) schreiben oder XFD(6) - maßgeblich ist die Ziffer in der Klammer.
Nach rechts kann XL nicht hochzählen, da die Zeile ja nicht verändert wird - hier müsstest du ="E"&SPALTE(D6) schreiben, wobei in diesem Fall die Spaltenbezeichnung (D) maßgeblich ist. Spalte D ist die 4. Spalte. Ergebnis wäre hier E4
Danke für deine Antwort aber so ganz ist es mir leider noch nicht klar :(
Könntest du mir die Formel im Ganzen noch einmal demonstrieren bitte?

Wenn ich z.B. statt "E" einfach Spalte() schreibe funktioniert es nicht...
Vielleicht habe ich das auch zu kompliziert beschrieben. Um es zu vereinfachen:

Auf dem einen Tabellenblatt stehen alle 20 Zeilen Werte in den Spalten,
auf dem anderen sollen alle Zeilen untereinander stehen ...

Hoffe ihr könnt mir dennoch weiter helfen.
Wäre euch sehr dankbar :)
Hallo

Arbeitsblatt mit dem Namen 'Berechnungen'
 DE
6789THJ
7368RBM
8691WDF

ZelleFormel
D6=INDEX(Daten!E:E;(ZEILE()-5)*20+1)
Diese Tabelle wurde mit Tab2Html (v2.4.1) erstellt. ©Gerd alias Bamberg
Hi,

Zitat:Könntest du mir die Formel im Ganzen noch einmal demonstrieren bitte?

Wenn ich z.B. statt "E" einfach Spalte() schreibe funktioniert es nicht...

="E"&ZEILE(D6) ergibt E6 ===> nach unten gezogen werden die Zeilen um 1 hochgezählt (E7, E8 usw); nach rechts bleibt es bei E6, da nach rechts keine Zeilen gezählt werden.

="E"&SPALTE(D6) ergibt E4 ===> nach rechts gezogen werden Spalten um 1 hochgezählt (E5, E6 usw); das E bleibt und Spalte D=4

Probiere es einfach mal aus und schau dir dazu die OH an.
Ok danke dir!
Werde es gleich auch nochmal probieren!

Habe es jetzt folgendermaßen gelöst:

Code:
=INDIREKT("DATEN!"&(WECHSELN(ADRESSE(1;SPALTE()+1;4);1;))&Zeile($D$6)+15+((Zeile()-6)*20))

mit

Code:
(WECHSELN(ADRESSE(1;SPALTE()+1;4);1;))

wird einfach nur der Buchstabe der Spalte ausgegeben - und das habe ich gesucht :)
Hallo,

wobei INDIREKT die schlechteste aller Möglichkeiten ist, zumal das nur mit geöffneten Dateien geht! ADRESSE ist auch eine Funktion, die eigentlich kaum ein Mensch braucht, zumindest nicht so, wie Du es eingesetzt hast.
Mit der Formel in D6 sollte es genauso funktionieren, wie Du es gerne hättest:


Code:
=INDEX(Daten!$E$21:$XY$5000;(ZEILE(A1)-1)*20+1;SPALTE(A1))
Wow! Idea
Besten Dank!!
Habe ich aber auch schon gelesen, dass "indirekt" nicht so gut und auch sehr rechenlastig sein soll etc.

VG,
xlsxvba