Frage von Pylo89, 61

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!

Hilfreichste Antwort - ausgezeichnet vom Fragesteller
von Ninombre, Community-Experte für Excel, 56

Vielleicht gibt es noch eine einfachere Lösung, ich bin das mit adresse angegangen

=INDIREKT("tabelle1!"&ADRESSE($D$3;SPALTE(A1);1;1))

Kommentar von Pylo89 ,

Funktioniert auch, komisch nur, dass sich das A1 in "Spalte(A1)" auch auf das aktuelle Arbeitsblatt bezieht und es dennoch geht. Danke!

Kommentar von Ninombre ,

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.

Kommentar von Oubyi ,

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).

Expertenantwort
von Oubyi, Community-Experte für Excel, 49

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?

Kommentar von Pylo89 ,

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!

Kommentar von Oubyi ,

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?

Kommentar von Ninombre ,

Das nach unten ziehen war bisher auch nicht genannt... Was genau soll da passieren? In D3 hast Du ja die Zeile festhinterlegt. Man könnte also nur den Bereich anpassen, aus dem gelesen wird. Ist das so gemeint?

Keine passende Antwort gefunden?

Fragen Sie die Community

Weitere Fragen mit Antworten