Excel Indirekt Funktion mit variablen Bezügen auf anderes und aktuelles Arbeitsblatt?
Hallo, ich arbeite momentan mit großen Datenmengen in Excel und möchte einige Zahlen in ein neues Arbeitsblatt ziehen. Ich will, dass der Bezug zur Spalte aus dem anderen Arbeitsblatt variabel bleibt und die Zeile aus dem geöffneten Arbeitsblatt genommen wird.
Bislang benutze ich die Formel: =INDIREKT("Tabelle1!A"&$D$3)
In D3 habe ich meinen Zeilenbezug. Ich möchte jetzt aber, wenn ich die Formel nach rechts ziehe, dass "=INDIREKT("Tabelle1!B"&$D$3) dort steht. Ich bekomme das nicht hin...
Danke für eure Tipps!
2 Antworten
Vielleicht gibt es noch eine einfachere Lösung, ich bin das mit adresse angegangen
=INDIREKT("tabelle1!"&ADRESSE($D$3;SPALTE(A1);1;1))
das =spalte(A1) liefert als Ergebnis einfach 1 für die 1. Spalte, das ist unabhängig von einem konkreten Tabellenblatt. Excel erkennt das A1 als Zellbezug und verändert ihn automatisch beim Kopieren der Formel, so wird das Problem gelöst, dass die Spalten mit der anderen Formel nicht hochgezählt wurden. Der Verweis aus die Tabelle1 reicht dann beim Indirekt aus.
DH!
Ich mache so was eher mit INDEX, da die Formel dann beim Umbenennen des Tabellenblattes weiter funktioniert. Ist aber marginal.
INDIREKT hatte aber auch einen Vorteil gegenüber INDEX, aber darauf komme ich im Moment nicht (:o).
Da "Tabelle1!A" ein String ist, also ein festgelegter Text, ist das schwierig.
Am besten kannst Du das imho so lösen:
=INDEX(Tabelle1!A1:A1000;$D$3)
Klappt es?
Funktioniert! Zwar klappt das nach unten ziehen nicht, aber das ist nicht so wichtig, wie das nach rechts ziehen! Was es mit den A1-A1000 auf sich hat verstehe ich nicht ganz. Aber gut, vielen Dank!
Die 1000 sind nur willkürlich festgelegt.
Die Formel gibt den n-ten Wert aus dem Bereich A1:A1000 wieder.
Wenn Du einen größeren Bereich einbeziehen willst, der Wert in D3 als0 >1000 werden kann, musst Du das anpassen.
Was soll denn beim Runterziehen passieren?
Soll immer dasselbe zurückgegeben werden? Dann:
=INDEX(Tabelle1!A$1:A$1000;$D$3)
Oder soll der Bezug dann auf D4, D5 usw. wechseln?
Dann:
=INDEX(Tabelle1!A$1:A$1000;$D3)
Oder wie sonst?
Funktioniert auch, komisch nur, dass sich das A1 in "Spalte(A1)" auch auf das aktuelle Arbeitsblatt bezieht und es dennoch geht. Danke!