ARRAYFORMULA({1,2,3})
Erzeugt drei Zellen mit den Werten 1, 2, 3.
Etwas komplexer:
ARRAYFORMULA(VLOOKUP(A2,Sheet1!A:F,{1,2,3,4},false))
Verwendet die Spalten 1..4 aus dem vlookup und füllt die Spalten mit Daten aus diesen Zellen.
Was ich wirklich will ist:
ARRAYFORMULA(VLOOKUP(A2,Sheet1!A:F,{1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21},false))
Ich frage mich, ob es eine einfache Möglichkeit gibt, die Parameter zu generieren, die als Zahlenfelder eingegeben werden, in diesem Fall die {1,2,3, ... 21}. Ich möchte also auf irgendeine Weise {1,2,3} oder {1,2,3,4,5} oder {1,2,3, ..., 125} generieren, ohne all diese Zahlen eingeben zu müssen sind in einer Reihenfolge.
Gibt es eine Formel wie:
SEQUENCE(1,21) that generates {1,2,3,4,5, ... , 19,20,21} or
SEQUENCE(1,1000) that generates {1,2,3,4,5, ... ,998,999,1000}
Damit ich letztendlich eintreten kann:
ARRAYFORMULA(VLOOKUP(A2,Sheet1!A:F,SEQUENCE(1,21),false)) or
ARRAYFORMULA(VLOOKUP(A2,Sheet1!A:F,SEQUENCE(1,1000),false))
Zur Verdeutlichung: Ich suche keine Skriptlösung. Ich versuche etwas zu finden, das in der Zelle funktioniert.
google-sheets
Tintenfisch
quelle
quelle
=ROW()
oder=COLUMN()
, um so etwas zu erreichen. Wenn Sie =ROW()
ohne Parameter verlassen, wird davon ausgegangen, dass es in jeder Zelle ausgewertet wird, in der es ausgedrückt wird (dasselbe mit=COLUMN()
). Wenn Sie einen Bereich explizit als diesen Parameter auflisten, wie Ruben es in einem getan hat=ARRAYFORMULA
, wird ein Array-Typ-Ergebnis mit den Zeilennummern des Bereichs zurückgegeben, den Sie explizit als Parameter verwendet haben. SO: `= ARRAYFORMULA (ROW (1:21)) gibt ein 1x21-Array von Zahlen zurück, die von 1 bis 21 zählen.=ArrayFormula(ROW(1:6)+1000)
Antworten:
Kurze Antwort
Verwenden Sie so etwas wie
ROW(A1:A21)
Erklärung
ROW (cell_reference) gibt die Zeilennummer der angegebenen Referenz zurück. Wenn die Referenz ein Bereich ist und sich die Funktion innerhalb einer ARRAYFORMULA befindet, wird ein Array einer Folge von Zahlen zurückgegeben, die mit der Zeilennummer beginnen, die der Startzellenreferenz entspricht, und mit der Zeilennummer enden, die der Endzellenreferenz entspricht.
Auf dieser Website gibt es mehrere Fragen und Antworten, die dies verwenden.
quelle
ROW(1:21)
ist äquivalent.ROW(A:A)
:)VERSUCHEN SIE STATT DIE FILTERFORMEL
Ich denke, Sie machen das schwieriger, als es sein muss. Die
=Filter()
Formel hier ist eine einfachere Lösung.Ein Beispiel, das Sie aufgelistet haben, ist:
=ARRAYFORMULA(VLOOKUP(A2,Sheet1!A:F,{1,2,3,4},false))
Dasselbe kann erreicht werden:=FILTER(Sheet1!A:F,Sheet1!A:A=A2)
Lassen Sie mich wissen, ob dies funktioniert oder ob Sie Fragen haben, und ich werde meine Antwort klarstellen.
quelle