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

Forumthread: Letzte Zelle in Spalte aus anderer Tabelle

Letzte Zelle in Spalte aus anderer Tabelle
14.02.2015 10:12:56
Dani
Hallo zusammen
Ich bin am Aufbauen einer Übersichtstabelle die eine Liste aller Tabellenblätternamen der Arbeitsmappe enthält (per VBA, mit Hyperlink.
Neben die Bezeichnung des Tab.-Blatts, hole ich verschiedene Werte aus der entsprechenden Tabelle und dort aus klar definierten Zellen. Das funktioniert mit INDIREKT ja sehr gut. In einer Zelle meiner Übersicht benötige ich nun aber immer den letzten Wert einer Spalte (ab H19) aus einem Tabellenblatt X (Bezeichnung in Spalte A).
Hier mal mein Lösungsversucht:
=WENN(A3"";INDEX(INDIREKT("'"&A3&"'H19:H999";MAX((INDIREKT("'"&A3&"'H19:H999""")) *ZEILE(INDIREKT("'"&A3&"'H19:H999"))));""))
Wieso erhalte ich damit ein #BEZUG! ?
Vielen Dank für eure Hilfe
und Gruss
Dani

Anzeige

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Was genau steht denn in A3? oT
14.02.2015 11:05:24
{Boris}
...

AW: Was genau steht denn in A3? oT
14.02.2015 11:22:03
Dani
Hallo Boris
IN A3 steht der Name des betreffenden Tabellenblatts, auf das ich mich beziehe (das kann Tabelle1! sein, ist in meinem Fall aber "Vorlage" per VBA hineingeschrieben und als Hyperlink zur entsprechenden Tabelle formatiert). Bei dieser Formel funktioniert das ja bestens:
=WENN(A3"";INDIREKT("'"&A3&"'!c19");"")
Ich erhalte den bestimmten Wert aus Zelle c19 aus der Tabelle, die in Zelle A3 verlinkt ist.
Aber sobald ich nicht die EINE bestimmte Zelle anwählen kann, sondern mit Index und Max versuche, die letzte beschriebene Zelle aufzurufen, kriege ich das in Verbindung mit dem Verweis auf das andere Tabellenblatt nicht hin.
Gruess
Dani

Anzeige
Dann schau mal genau hin...
14.02.2015 11:24:39
{Boris}
Hi,
denn Du schreibst:
funktioniert das ja bestens:
=WENN(A3"";INDIREKT("'"&A3&"'!c19");"")

was ich Dir glaube.
Und jetzt schau mal, was HIER anders ist (bzw. fehlt!):
=WENN(A3"";INDEX(INDIREKT("'"&A3&"'H19:H999" .....
VG, Boris

Anzeige
AW: Dann schau mal genau hin...
14.02.2015 11:34:40
Dani
Salü Boris
Habe noch einige Versuche gestartet und die fehlenden ! sogleich bemerkt.
Der direkte Bezug zu einer anderen Tabelle funktioniert ja auch (hier zu "Vorlage")
=INDEX(Vorlage!H1:H1000;MAX((Vorlage!H1:H1000"")*ZEILE(Vorlage!H1:H1000)))
Ich scheitere am indirekten Bezug über die Zelle A3...
=INDEX(INDIREKT(" ' "&A3&" '!H1:H999");MAX((INDIREKT(" ' "&A3&" '!H1:H999""")) *ZEILE(INDIREKT(" ' "&A3&" '!H1:H999"))))
LG
Dani

Anzeige
Leerzeichen und ...
14.02.2015 15:16:33
Erich
Hi Dani,
woher kommen die Leerzeichen um das Hochkomma in deiner Formel (B6)?
In B5 hab ich die mal rausgenommen, zur besseren Vergleichbarkeit mit B3 oder B4.
In B5 fällt noch direkt auf, dass die schließende Klammer des mittleren INDIREKT nicht direkt hinter
...999" steht, sondern nach dem <>'"
Das ist einfach falsch. Worüber soll da INDIREKT gebildet werden?
 AB
2 r
3Vorlager
4 r
5 #BEZUG!
6 #BEZUG!

Formeln der Tabelle
ZelleFormel
B2{=INDEX(Vorlage!H1:H999;MAX((Vorlage!H1:H999<>"")*ZEILE(Vorlage!H1:H999)))}
B3{=INDEX(INDIREKT("'"&A3&"'!H1:H999"); MAX((INDIREKT("'"&A3&"'!H1:H999")<>"")*ZEILE(INDIREKT("'"&A3&"'!H1:H999"))))}
B4{=INDEX(INDIREKT("'"&A3&"'!H1:H999"); MAX((INDIREKT("'"&A3&"'!H1:H999")<>"")*ZEILE(H1:H999)))}
B5{=INDEX(INDIREKT("'"&A3&"'!H1:H999"); MAX((INDIREKT("'"&A3&"'!H1:H999"<>"")) *ZEILE(INDIREKT("'"&A3&"'!H1:H999"))))}
B6{=INDEX(INDIREKT(" ' "&A3&" '!H1:H999"); MAX((INDIREKT(" ' "&A3&" '!H1:H999"<>"")) *ZEILE(INDIREKT(" ' "&A3&" '!H1:H999"))))}
Enthält Matrixformel:
Umrandende
{ } nicht miteingeben,
sondern Formel mit STRG+SHIFT+RETURN abschließen!
Matrix verstehen


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4.8
Rückmeldung wäre nett! - Grüße aus Kamp-Lintfort von Erich

Anzeige
AW: Leerzeichen und ...
14.02.2015 23:10:09
Dani
Hallo Erich
Vielen Dank für deine Lösungsansätze. Die Leerzeichen habe ich eingegeben, damit ich die ' besser von den " unterscheiden kann. Ich bin davon ausgegangen, dass der Fehler da irgendwo versteckt ist. War falsch, in Wahrheit habe ich den "Wald" vor lauter Klammern nicht mehr gesehen :-)
Deine Lösungen funktionieren tadellos, also auch als kurze Variante (B4, wie als längere Version mit Indirekt auch bei Zeile..
Nochmals vielen Dank und gute Nacht
Grüsse aus Lachen nach Kamp-Lintfort
Dani
Anzeige
;
Anzeige
Anzeige

Infobox / Tutorial

Letzte Zelle in Spalte aus anderer Tabelle abrufen


Schritt-für-Schritt-Anleitung

Um die letzte Zelle in einer bestimmten Spalte aus einem anderen Tabellenblatt abzurufen, kannst Du folgende Formel nutzen. Diese Anleitung basiert auf dem Beispiel, das im Forumthread diskutiert wurde:

  1. Tabellenblatt auswählen: Stelle sicher, dass der Name des Tabellenblatts in einer Zelle (z.B. A3) steht.

  2. Formel eingeben: Verwende die folgende Formel, um den letzten Wert in der Spalte H (beginnend ab H19) abzurufen:

    =WENN(A3<>"",INDEX(INDIREKT("'"&A3&"'!H19:H999"),MAX((INDIREKT("'"&A3&"'!H19:H999")<>"")*ZEILE(INDIREKT("'"&A3&"'!H19:H999")))),"")
  3. Matrixformel bestätigen: Diese Formel muss als Matrixformel eingegeben werden. Drücke dazu Strg + Shift + Enter, nicht nur Enter.

  4. Ergebnis überprüfen: Die Formel sollte nun den letzten Wert aus der gewählten Spalte zurückgeben.


Häufige Fehler und Lösungen

  • #BEZUG! Fehler: Überprüfe, ob der Tabellenblattname in A3 korrekt und ohne Leerzeichen steht. Achte darauf, dass Du die richtigen Hochkommas verwendest.
  • Falsche Klammern: Stelle sicher, dass alle Klammern korrekt gesetzt sind. Fehlende Klammern können dazu führen, dass die Formel nicht korrekt interpretiert wird.
  • Falscher Bereich: Vergewissere Dich, dass der Bereich in der Formel (H19:H999) den richtigen Bereich abdeckt, in dem Du Daten erwartest.

Alternative Methoden

Falls Du eine abweichende Variante oder einen anderen Ansatz bevorzugst, kannst Du auch eine Kombination mit VBA verwenden:

  1. VBA-Makro erstellen: Füge ein neues Modul in Excel hinzu und verwende folgenden Code:

    Function LetzteZelle(sheetName As String, col As String) As Variant
       Dim ws As Worksheet
       Set ws = ThisWorkbook.Sheets(sheetName)
       LetzteZelle = ws.Cells(ws.Rows.Count, col).End(xlUp).Value
    End Function
  2. Verwendung der Funktion: Rufe die Funktion in einer Zelle so auf:

    =LetzteZelle(A3, "H")

Diese Methode funktioniert gut, wenn Du regelmäßig den letzten Zeitabschnitt aus verschiedenen Tabellenblättern abrufen möchtest.


Praktische Beispiele

  1. Nehmen wir an, in Zelle A3 steht "Vorlage". Die Formel gibt Dir den letzten Wert aus der Spalte H (H19:H999) in der Tabelle "Vorlage".
  2. Bei der Verwendung von INDIREKT kannst Du auch dynamische Tabellenblätter referenzieren, was nützlich ist, wenn Du mit vielen verschiedenen Blättern arbeitest.
  3. Um wichteln auslosen in Excel zu simulieren, könntest Du die letzte Zelle in einer Liste von Namen abrufen, um zufällig einen Namen auszuwählen.

Tipps für Profis

  • Nutze die Tabelle-Funktion in Excel, um Deine Daten zu strukturieren. Tabellen können helfen, die Formeln automatisch anzupassen, wenn Du Zeilen hinzufügst oder entfernst.
  • Vermeide Leerzeichen in den Tabellennamen, um zukünftige Fehler zu minimieren.
  • Experimentiere mit den Funktionen VERGLEICH und SVERWEIS, um noch flexiblere Lösungen zu finden.

FAQ: Häufige Fragen

1. Warum funktioniert die INDIREKT-Funktion nicht?
Die INDIREKT-Funktion benötigt einen korrekten Textstring, der den Zellbezug beschreibt. Überprüfe, ob der Tabellenblattname und die Zellbezüge korrekt sind.

2. Gibt es eine Möglichkeit, die Formel ohne Matrixformel zu verwenden?
Ja, Du kannst die INDEX- und MAX-Funktionen in einer Hilfsspalte verwenden, um die letzten Werte zu ermitteln, ohne eine Matrixformel zu benötigen.

3. Wie kann ich den letzten Wert einer anderen Spalte abrufen?
Ändere einfach den Spaltenbezug in der Formel von H19:H999 zu der gewünschten Spalte, z.B. G19:G999.

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