Ich versuche eine einfache Sache zu tun: Ich muss nur einige Zellen auf Werte setzen, die sich in den vorherigen Zeilen befinden .. Ich habe =A(Row()-1)
versucht, aber es funktioniert nicht.
Um dieses Problem in Excel zu lösen, würde ich normalerweise nur die Literal-Zeilennummer der obigen Zelle eingeben. Wenn ich z. B. in Zelle A7
eingebe, würde ich die Formel =A6
verwenden. Wenn ich diese Formel dann in andere Zellen kopiert habe, würden sie auch die Zeile der vorherigen Zelle verwenden.
Eine weitere Option ist die Verwendung von Indirect()
, wodurch die wörtliche Anweisung innerhalb einer Formel aufgelöst wird. Sie könnten so etwas verwenden:
=INDIRECT("A" & ROW() - 1)
Die obige Formel löst sich auf den Wert der Zelle in Spalte A
und die Zeile, die um eins niedriger ist als die der Zelle, die die Formel enthält.
Diese Formel erfordert keinen Zeilenbuchstaben ("A", "B" usw.). Es gibt den Wert der Zelle eine Zeile darüber in derselben Spalte zurück.
=INDIRECT(ADDRESS(ROW()-1,COLUMN()))
Ich folgte BEN und Thanks and Lot für die Antwort. Also nutzte ich seine Idee, um meine Lösung zu erhalten. Ich poste dasselbe. Wenn also jemand anderes eine ähnliche Anforderung hat, können Sie auch meine Lösung verwenden. Meine Anforderung war so ähnlich Ich möchte die Summe der gesamten Daten von der ersten bis zur letzten Zeile abrufen, und ich habe die Kalkulationstabelle programmgesteuert generiert. Die Zeilennamen sollten also nicht hart geschrieben werden, da die Daten immer dynamisch und die Anzahl der Zeilen ist sind niemals konstant Meine Formel lautete etwa wie folgt.
=SUM(B1:INDIRECT("B"&ROW()-4))
Einfacher ist es für mich, in die R1C1
-Notation zu wechseln und einfach R[-1]C1
zu verwenden und zurückzuschalten.
Sie können auch =OFFSET([@column];-1;0)
verwenden, wenn Sie sich in einer benannten Tabelle befinden.