2013-06-03 4 views
30

Ich habe 2 Arbeitsblätter: Summary und SERVER-ONE. In der Zelle A5 auf dem Arbeitsblatt Zusammenfassung habe ich den Wert SERVER-ONE hinzugefügt.Verwenden Sie den Zeichenfolgenwert aus einer Zelle, um auf das gleichnamige Arbeitsblatt zuzugreifen

Daneben, in Zelle B5, würde ich eine Formel wie die den Wert in A5 verwendet den Wert von G7 in dem Arbeitsblatt mit dem gleichen Namen (SERVER-ONE) angezeigt werden soll.

Ich konnte manuell verwenden:

='SERVER-ONE'!G7 

Allerdings würde Ich mag diese dynamisch sein, so kann ich leicht mehrere Arbeitsblätter hinzufügen.

habe ich versucht, die offensichtlich ohne Freude:

='A5'!G7 

Irgendwelche Vorschläge?

Antwort

67

Sie die Formel INDIRECT() verwenden können.

Dies im Grunde nimmt eine Zeichenfolge und behandelt es als Referenz. In Ihrem Fall würden Sie verwenden:

=INDIRECT("'"&A5&"'!G7") 

Die doppelten Anführungszeichen sind, um zu zeigen, was drin Strings sind, und nur A5 hier ist eine Referenz.

7

Sie benötigen INDIRECT Funktion:

=INDIRECT("'"&A5&"'!G7") 
1

INDIREKT ist die Funktion, die Sie verwenden möchten. Wie folgt:

=INDIRECT("'"&A5&"'!G7") 

Mit INDIREKT können Sie Ihre Formel als Textzeichenfolge erstellen.

0

Raten @ user3010492 es getestet, aber ich verwenden, um dieses mit fester Zelle A5 -> $ A $ 5 und festes Element des G7 -> $ G7

=INDIRECT("'"&$A$5&"'!$G7") 

Auch verschachtelte funktioniert gut in anderer Formel, wenn Sie umschließen es in Klammern.

+1

Ist es in diesem Zusammenhang möglich, G7 (G8, G9 usw.) automatisch zu inkrementieren, wenn Sie die untere rechte Ecke der Zelle greifen und herunterziehen, aber A5 festhalten? –

4

nicht sicher, ob Sie Ihre Frage gelöst haben, aber ich fand, dass dies funktionierte, um die Zeilennummer beim Ziehen zu erhöhen.

= INDIRECT("'"&$A$5&"'!$G"&7+B1) 

Wo B1 auf eine Indexzahl bezieht sich, beginnend bei 0.

Also, wenn Sie kopieren ziehen sowohl die Index-Zelle und die Zelle mit der indirekten Formel, werden Sie die indirekte erhöhen. Sie könnten wahrscheinlich auch einen eleganteren Zähler mit der Index-Funktion erstellen.

Hoffe, das hilft.

1

Mit der Funktion ROW() kann ich diese Formel vertikal ziehen. Es kann auch horizontal gezogen werden, da es keine $ vor der gibt.

= INDIRECT("'"&D$2&"'!$B"&ROW()) 

mein Layout hat Blattnamen als Spaltenüberschriften (B2, C2, D2, etc.) und bildet mehrere Zeilenwerte von Spalte B in jedem Blatt.

0

Dies funktioniert nur bis Spalte Z, aber Sie können diese horizontal und vertikal ziehen.

=INDIRECT("'"&$D$2&"'!"&CHAR((COLUMN()+64))&ROW()) 
1

Hier ist eine Lösung INDIREKTE verwenden, die, wenn Sie die Formel ziehen, wird sie entsprechend unterschiedliche Zellen aus dem Zielblatt abholen. Es verwendet die R1C1-Notation und ist nicht darauf beschränkt, nur auf den Spalten A-Z zu arbeiten.

Diese Version nimmt den Wert von der Zielzelle auf, die der Zelle entspricht, in der die Formel platziert wird. Zum Beispiel, wenn Sie die Formel in "Zusammenfassung"! B5 dann wird es den Wert von "SERVER-ONE"! B5, nicht "SERVER-ONE"! G7 wie in der ursprünglichen Frage angegeben. Sie können jedoch problemlos Offsets zur Zeile und Spalte hinzufügen, um die gewünschte Zuordnung in jedem Fall zu erreichen.

Verwandte Themen