Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Variabler Bezug auf Tabellenblatt

Forumthread: Variabler Bezug auf Tabellenblatt

Variabler Bezug auf Tabellenblatt
27.06.2002 12:36:42
Christian
Hallo,

ich habe da ein Problem: Ich habe eine Datei, in der ich in unregelmäßigem Abstand das letzte (=jüngste) Tabellenblatt kopiere, es mit dem aktuellen Datum benenne und aktuelle Daten eintrage. Nun will ich per Formel in einer Zelle den Summenzuwachs seit der letzten Aktualisierung ausweisen, d.h. einen Bezug auf das bis dahin jüngste Tabellenblatt legen. Bisher muß ich nach dem Kopieren des Tabellenblattes manuell den Tabellennamen aktualisieren. Kann ich dies auch variabel sprich automatisch gestalten?.

Für Hilfe wäre ich sehr dankbar.

Christian

Anzeige

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
INDIREKT und ggf. ADRESSE sind die Lösung
27.06.2002 13:04:13
Alan Hathway
INDIREKT und ggf. ADRESSE sind die Lösung
Re: INDIREKT und ggf. ADRESSE sind die Lösung
27.06.2002 15:12:05
Christian
Ich probier schon 2 Stunden rum, aber krieg's nicht hin. Könntest Du mir genauere Infos bezüglich Formeln geben?

Christian

Nein, leider, weil
27.06.2002 15:15:18
Alan Hathway
Du zu wenig Information preisgegeben hast.

Versuch mal
a)
https://www.herber.de/forum/messages/131899.html
anzuschauen

b) in der Recherche INDIREKT nach zuschauen

c) wenn es alles nicht klappt eine kurz konkrete Frage auf Grund eines Beispiels hier zu stellen.

Alan Hathway

Anzeige
Re: Nein, leider, weil
27.06.2002 15:52:04
Christian
Sorry, aber irgendwie find ich nichts Passendes...

Also, Beispiel:

3 Tabellenblätter in einer Datei:

Das erste heißt 19.06.02, in Zelle A1 steht der Wert 50

Das zweite sieht identisch aus wie 19.06.02, heißt 25.06.02, in Zelle A2 steht der Wert 100. Zusätzlich gibt es eine Zelle B2, in der die Differenz der beiden Werte ausgerechnet wird ->
=A1-'19.06.02'!A1
Das dritte ist eine Kopie von 25.06.02. Ich benenne das Blatt um in z.B. 29.06.02 (-> keine datumstechnisch lineare Benennung), ändere den Wert in A1 auf 200. In der Differenzbildungszelle B2 steht nun aber immer noch die Formel =A1-'19.06.02'!A1.

Ich hätte nun gerne in B2 eine Formel, die automatisch auf das "jüngste" resp. am weitesten rechts vor dem aktuellen Tabellenblatt stehende Tabellenblatt referenziert, also in diesem Falle auf 25.06.02.

Habe ich mich verständlich ausgedrückt?

Christian

Anzeige
Tja, wenn es so ist...
27.06.2002 16:18:59
Alan Hathway
habe ich auch keine Lösung

(kenne keinen Weg dieses zu automatisieren)

Dafür Vorschläge.
Schreib in X9 (oder igendwo) der Namen des Blattes auf dem dieses Blatt sich beziehen sollte
D.h.
Im Blatt 25.06.02 gehört 19.06.02 in X9
Im Blatt 29.06.02 gehört 25.06.02 in X9

Dann Schreib Deine Formel
nicht
=A1-'19.06.02'!A1
sondern
=A1-INDIREKT(X9&"!A1")

Du musst nur aufpassen, dass beim erzeugen eines neuen Blattes, X9 muss auch angepasst werden.

Alternative: Es gibt sicherlich Möglichkeiten mit Macros zu arbeiten um dieses zu automatisieren- dann wurde man ein Makro haben um ein neues Blatt anzulegen und gleichzeitig die Formel zu aktualisieren.

Alan Hathway


Anzeige
Re: Tja, wenn es so ist...
27.06.2002 16:21:45
Christian
Na, da bin ich ja froh, daß ich doch nicht so bescheuert bin ;o)

Vielen Dank für Deine Hilfe

Christian

Rest der Lösung
27.06.2002 16:36:20
Martin Beck
Hallo,

Alans Vorschlag kann wie folgt ergänzt werde. Weiße der Tabelle, die Du kopierst, (=die, die am weitesten rechts steht), folgende Ereignisprozedur zu:

Dadurch wird beim kopieren des Tabellenblattes das Deactivate-Ereignis ausgelöst und in Zelle Xß der Kopie der Blattname der vorletzten Tabelle eingetragen. Und daruf kannst Du dann mit INDIREKT - wie von Alan beschrieben - zugreifen.

Gruß
Martin Beck

Anzeige
Supa supa supa! Es klappt! Danke! (o.T.)
27.06.2002 16:55:30
Christian

;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Infobox / Tutorial

Variabler Bezug auf Tabellenblatt


Schritt-für-Schritt-Anleitung

Um einen variablen Bezug auf ein vorheriges Tabellenblatt in Excel zu erstellen, kannst du die Funktionen INDIREKT und ADRESSE verwenden. Hier ist eine einfache Anleitung:

  1. Erstelle ein neues Tabellenblatt: Lege ein neues Tabellenblatt an und benenne es nach dem aktuellen Datum, z. B. 29.06.02.

  2. Füge in Zelle X9 den Namen des Referenzblattes ein: In deinem neuen Blatt (z. B. 29.06.02) gib in Zelle X9 den Namen des vorherigen Blattes ein, auf das du verweisen möchtest, z. B. 25.06.02.

  3. Verwende die INDIREKT-Funktion: In der Zelle, in der du die Differenz berechnen möchtest, verwende die folgende Formel:

    =A1 - INDIREKT(X9 & "!A1")

    Diese Formel zieht den Wert aus Zelle A1 des in X9 angegebenen Blattes ab.

  4. Aktualisiere X9 bei neuen Blättern: Bei der Erstellung eines neuen Blattes musst du sicherstellen, dass der Name des vorherigen Blattes in X9 aktualisiert wird.


Häufige Fehler und Lösungen

  • Fehler: Bezug auf das falsche Blatt

    • Lösung: Stelle sicher, dass der Name des vorherigen Blattes korrekt in Zelle X9 eingegeben ist. Tippfehler führen zu Fehlern in der Formel.
  • Fehler: INDIREKT gibt einen #BEZUG!-Fehler zurück

    • Lösung: Überprüfe, ob das Blatt, auf das verwiesen wird, existiert und der Name in X9 korrekt ist.

Alternative Methoden

Wenn du eine automatisierte Lösung bevorzugst, kannst du auch VBA (Visual Basic for Applications) verwenden, um den Bezug auf das vorherige Tabellenblatt zu erstellen. Eine einfache Möglichkeit ist es, ein Makro zu schreiben, das den Namen des letzten Blattes automatisch aktualisiert.

Private Sub Workbook_SheetDeactivate(ByVal Sh As Object)
    If Sh.Index > 1 Then
        Sh.Range("X9").Value = ThisWorkbook.Sheets(Sh.Index - 1).Name
    End If
End Sub

Füge diesen Code in das Modul "DieseArbeitsmappe" ein. Dies aktualisiert X9 mit dem Namen des vorherigen Blattes, wenn du das Blatt verlässt.


Praktische Beispiele

Angenommen, du hast folgende Blätter:

  • 19.06.02 mit A1 = 50
  • 25.06.02 mit A1 = 100
  • 29.06.02 mit A1 = 200

In 29.06.02 trägst du in X9 25.06.02 ein. Deine Differenzformel in B2 lautet:

=A1 - INDIREKT(X9 & "!A1")

Das Ergebnis wäre 200 - 100 = 100.


Tipps für Profis

  • Verwende definierte Namen: Statt Blattnamen in Zelle X9 zu verwenden, kannst du definierte Namen für die Blätter erstellen, um die Lesbarkeit und Wartbarkeit deiner Formeln zu verbessern.

  • VBA-Makros: Nutze Makros für komplexe Automatisierungen, um den Prozess der Blattbenennung und der Formelaktualisierung zu optimieren.


FAQ: Häufige Fragen

1. Kann ich auch mehrere Blätter gleichzeitig referenzieren?
Ja, du kannst die INDIREKT-Funktion auch in Kombination mit anderen Funktionen verwenden, um auf mehrere Blätter zuzugreifen, indem du komplexere Formeln erstellst.

2. Funktioniert dies in allen Excel-Versionen?
Die beschriebenen Methoden funktionieren in den meisten aktuellen Excel-Versionen, einschließlich Excel 2010 und neuer. Beachte jedoch, dass einige VBA-Funktionen je nach Version variieren können.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige