Wie Auf einer Excel-Tabelle Zelle, indem Sie die Zeilennummer oder Horizontal Kopf-Mit-Tisch-Notation?
Möchte ich verweisen auf eine einzelne Zelle in einer Tabelle, aus außerhalb der Tabelle, mit eckigen Klammer-Blatt-Formel-notation.
Etwas wie:
[MyTable[MyField] 3]
oder
[MyTable[MyField] 3:3]
-Verweis auf die 3. Zeile von der MyField Spalte, oder:
[MyTable[MyField] MyRow]
-Referenz der MyRow Zeile (ganz Links Zeilen-header) von der MyField Spalte.
Braucht, um zu arbeiten, die von außerhalb der Tabelle, dh nicht verwenden können, @ oder #ThisRow.
Nicht auf der Suche nach Methoden, bei denen ÜBEREINSTIMMEN, INDEX, OFFSET, etc. Nicht auf der Suche nach VBA-Methoden. Nur einfache Tisch-notation. Nicht auf der Suche für das manuelle erstellen von benannten Bereichen.
Warum? Weil, Tabellen 🙂
Pre-2013 Excel.
(PS, nicht dort eingesetzt zu werden, einen Weg (pre-Tabellen) zum verweisen auf Zellen, die durch Zeilen-und Spaltenüberschriften? Ich denke, es war vielleicht als "auto-benennen", oder so ähnlich.)
Du musst angemeldet sein, um einen Kommentar abzugeben.
heh, gut, das funktioniert:
=Tabelle1[Spalte2] 3:3
Also das ist Fortschritt 🙂
Einfach nur genial wäre eine Möglichkeit zum verweisen auf eine Zeile, um den Inhalt der linken Spalte.
Thx!!!
Wir wiederverwenden können, die Idee von der Kreuzung operator (also ein Leerzeichen zwischen zwei Referenzen) und verbessern damit die relative Zeilennummer der gezielte Eintrag in der Tabelle, bezeichnet als
row_nb
hier:=tbl[col] OFFSET(tbl[[#Headers],[col]],row_nb,)
oder einfach nur ohne Kreuzung tatsächlich (vgl. Kommentar unten):
=OFFSET(tbl[[#Headers],[col]],row_nb,)
E. g.
=Table1[Column2] OFFSET(Table1[[#Headers],[Column2]],2,)
Diese Weise brauchen Sie nicht abhängig von der position der Tabelle in das Arbeitsblatt ein. Gut, es führt zu einer komplizierteren Formel, in der Tabelle name
tbl
- und Spaltennamencol
doppelt angezeigt. Hier sind einige Kommentare über es:Können Sie natürlich halten die
OFFSET(...)
Teil nur. Der Nachteil ist, dass die Formel wird nie wieder irgendwelche Fehler, wennrow_nb
übersteigt die tatsächliche Anzahl der Positionen in der Tabelle. Es werde z.B. nur0
wenn die Zellen unterhalb der Tabelle sind leer.Halten eine Formel, die wirft einen Fehler, wenn wir auf eine off-Tabellenzeile, können wir uns weiter verbessern es: es ist "dynamisch", indem
tbl
,col
undrow_nb
Parameter:=INDIRECT(tbl&"["&col&"]") OFFSET(INDIRECT(tbl&"[[#Headers],["&col&"]]"),row_nb,)
Davon aus, dass wir definiert haben
tbl
,col
undrow_nb
als benannte Bereiche. Sonst verwenden Sie einfach die Zelle Adressen:=INDIRECT(A1&"["&A2&"]") OFFSET(INDIRECT(A1&"[[#Headers],["&A2&"]]"),A3,)
Ich bin kein großer fan von
INDIRECT
aber in diesem Fall ist es wirklich praktisch, lassen Sie die Formel anpassen, um verschiedene Tabellen, Spalten und line-Elemente.Können Sie auch
index()
Funktion wie in:So bekommen Sie die Zeile 3 aus der Spalte MyField in Tabelle MyTable.
Referenz:
https://www.ozgrid.com/forum/forum/help-forums/excel-general/116365-reference-a-single-cell-in-a-table-using-structured-referencing
Table1[Column2] 3:3
. Scheint nur mehr die Eingabe, plus eine Funktion verwenden, so kann die Leistung schlechter sein.