Ich muss eine relativ einfache Excel-Tabelle (Arbeitsmappe) erstellen. Ich benötige 12 Blätter (Registerkarten), eines für jeden Monat.
Jedes Blatt verweist auf Zellen im vorherigen Blatt. Beispielsweise bezieht das Blatt „Mai“ Daten aus dem Blatt „April“, das Blatt „Juni“ bezieht Daten aus dem Blatt „Mai“ usw.
Nehmen wir an, ich erstelle das erste und das zweite Blatt, „April“ und „Mai“. Wenn ich „Mai“ kopiere und es in „Juni“ umbenenne, beziehen sich alle Formeln weiterhin auf „April“, wie im Blatt „Mai“. Ich möchte, dass sie stattdessen automatisch auf „Mai“ verweisen.
Wie ist das möglich?
Antwort1
Erstellen Sie das folgende Makro:
Function SHEET_OFFSET(Offset, Ref)
' Returns cell contents at Ref, in sheet Offset
Application.Volatile
With Application.Caller.Parent
SHEET_OFFSET = .Parent.Sheets(.Index + Offset) _
.Range(Ref.Address).Value
End With
End Function
Wenn Sie dann möchten, dass das Blatt Mai auf die Zelle zugreift April!Q42
, verwenden Sie die Formel
SHEET_OFFSET(-1, Q42)
Das erste Argument ist die Blattnummer relativ zur aktuellen und das zweite Argument ist der Zellbezug. Wenn Sie diese Formel in das Juni-Blatt kopieren, wird automatisch auf das Mai-Blatt verwiesen.
Quelle: Ich fand dies beiDie Tabellenkalkulationsseite.