Formel auf ein vorheriges Blatt beziehen

Bild

Betrifft: Formel auf ein vorheriges Blatt beziehen
von: Wolfgang R.
Geschrieben am: 24.04.2005 12:33:07
Hallo zusammen,
Ich habe da ein Problem,
in einer Arbeitsmappe habe ich 93 Blätter für einen Monat, mit der Bezeichnung 1, 1-2, 1-3, 2, 2-2, 2-3, 3, 3-2, 3-3, 4, 4-2, 4-3, usw. (für die ersten 4 Tage)
Nun möchte ich in einer Formel jeweils Daten aus einer Zelle des vorherigen Blattes haben, z.B. Formel in Blatt "1-2" lautet "='1'!A1"
Formel in Blatt "1-3" lautet "='1-2'!A1"
Formel in Blatt "2" lautet "='1-3'!A1" usw.
Ich müsste in jedem der 93 Blätter 15 neue Formeln eingeben.
Nun meine Frage:
Damit ich nicht in jedem der 93 Blätter 15 neue Formeln eingeben muss, besteht vielleicht die Möglichkeit anstelle des Blattnamen (1, 1-2, 1-3, 2, 2-2) eine Formel, Funktion oder ähnlich einzugeben.
Somit könnte ich alle Blätter gleichzeitig bearbeiten bzw. die 15 Formeln in alle Blätter kopieren.
Ich hoffe ich habe mich verständlich ausgedrückt und bin jetzt schon Dankbar für eure Hilfe.
Gruß Wolfgang

Bild

Betrifft: AW: Formel auf ein vorheriges Blatt beziehen
von: IngoG
Geschrieben am: 24.04.2005 14:19:09
Hallo Wolfgang,
mE geht das am einfachsten mit einer kleinen selbstgeschriebenen function:
einfach vorblatt(a1) statt a1 eingeben und die formel bezieht sich auf den bezug (hier a1) des vorherigen Blattes. (im ersten Blatt auf sich selbst!!!)
man kann zB auch =summe(vorblatt(a1:a5)) eingeben, dann werden die Zellen a1-a5 des Vorblattes addiert.
<pre>
Function vorblatt(zelle As Range) As Range
Application.Volatile
If zelle.Parent.Index > 1 Then
Set vorblatt = Sheets(zelle.Parent.Index - 1).Range(zelle.Address)
Else
Set vorblatt = zelle 'für minimum erstes Blatt!!!
'set vorblatt=Sheets(sheets.count).Range(zelle.Address) 'für rollierende zuweisung!!!
End If
End Function</pre>
die

Function muß einfach in ein standardmodul der Datei kopiert werden...
Gruß Ingo 
PS eine Rückmeldung wäre nett...

Bild

Betrifft: AW: Formel auf ein vorheriges Blatt beziehen
von: Wolfgang R.
Geschrieben am: 24.04.2005 23:18:51
Hallo Ingo,
Danke für deine Nachricht.
Entschuldige das ich mich erst so spät melde, kam erst um 22:30 Uhr nach Hause.
Ich habe die Function in ein Standardmodul kopiert und ausgeführt, bekomme aber eine Fehlermeldung.
Sie lautet: Fehler beim Kompilieren: Erwartet: Zeilennummer oder Sprungmarke oder Anweisung oder Anweisungsende.
Dabei ist die erste und die letzte Zeile der Funktion rot markiert.
Hast du oder jemand anderes eine Erklärung dafür.
Für weitere Hilfe bin ich sehr Dankbar.
Gruß Wolfgang
Bild

Betrifft: Bsp-Datei...
von: ingoG
Geschrieben am: 24.04.2005 23:29:36
Hallo Wolfgang,
hab Dir mal eine Datei hochgeladen.
https://www.herber.de/bbs/user/21646.xls

Bei mir funzt es einwandfrei
Gruß Ingo
PS eine Rückmeldung wäre nett...
Bild

Betrifft: AW: Bsp-Datei...
von: Wolfgang R.
Geschrieben am: 24.04.2005 23:43:18
Hallo Ingo,
danke für deine schnelle Nachricht.
Habe das Modul von deiner Datei in meine kopiert und es klappte auf Anhieb.
Der Fehler war, das ich das "pre" am Anfang und am Ende mit eingegeben habe.
Aber jetzt klappt es wunderbar, nochmals vielen Dank.
Viele Grüße aus Duisburg, Wolfgang
Bild

Betrifft: freut mich, danke für die Rückmeldung oT
von: ingoG
Geschrieben am: 24.04.2005 23:58:06
.
 Bild

Beiträge aus den Excel-Beispielen zum Thema "Formel auf ein vorheriges Blatt beziehen"