Diese Frage bezieht sich auf das Zusammenfassen einer Datenbank in einer Google-Tabelle mit vorgegebenen Kriterien.Verwenden von ArrayFormula bei Abfrage mit mehreren und beschränkten Kriterien
Ich habe eine Datentabelle wie so in Bereich A1: B8
A B
-------------
310 890.00
210 875.00
100 849.00
80 845.00
70 842.00
61 842.00
60 841.00
53 825.50
Ich habe auch eine Kriterientabelle, die die Grenzen für die Bereiche in der fusionierten Tabelle verwendet werden angibt. Die Kriterien-Tabelle sieht so aus.
START END
------------
210 310
95 200
69 90
53 65
Die Kriterientabelleist abgeleitet unabhängig aus der Datentabelle und wie Sie sehen können, nicht alle Werte in der Kriterientabelle sind in der Datentabelle. Wie kann ich ArrayFormula so verwenden, dass die Final Table die folgenden Daten enthält
START END MAX MIN START VALUE END VALUE
210 310 890 875 875 890
95 200 849 849 849 849
69 90 845 842 842 845
53 65 842 825.5 825.5 842
Hier sind die Ausgänge verwendeten Formeln die MAX
, MIN
, berechnen START VALUE
und END VALUE
MAX FORMULA
INDEX(
query(
{ ARRAYFORMULA(VALUE(table1!$A$1:$A$8)),
ARRAYFORMULA(VALUE(table1!$B$1:$B$8)) },
" select max(Col2)
where Col1>="& VALUE(table2!A2) &" and Col1<=" & VALUE(table2!B2) &
" label max(Col2) ''"
),
1,
1
)
MIN FORMULA
INDEX(
query(
{ ARRAYFORMULA(VALUE(table1!$A$1:$A$8)),
ARRAYFORMULA(VALUE(table1!$B$1:$B$8)) },
" select min(Col2)
where Col1>="& VALUE(table2!A2) &" and Col1<=" & VALUE(table2!B2) &
" label min(Col2) ''"
),
1,
1
)
START VALUE FORMULA
INDEX(
query(
{ ARRAYFORMULA(VALUE(table1!$A$1:$A$8)),
ARRAYFORMULA(VALUE(table1!$B$1:$B$8)) },
" select Col2
where Col1>="& VALUE(table2!A2) &" and Col1<=" & VALUE(table2!B2) &
" order by Col1 asc"
),
1,
1
)
END VALUE FORMULA
INDEX(
query(
{ ARRAYFORMULA(VALUE(table1!$A$1:$A$8)),
ARRAYFORMULA(VALUE(table1!$B$1:$B$8)) },
" select Col2
where Col1>="& VALUE(table2!A2) &" and Col1<=" & VALUE(table2!B2) &
" order by Col1 desc"
),
1,
1
)
Hier ist die link zum öffentlich bearbeitbaren Google Blatt mit den Beispieldaten darauf.
Wie kann ich ARRAYFORMULA
in Google Tabellen verwenden, sodass die Details für einen sehr großen großen Datensatz autopopuliert werden.
Ich habe FILTER
und VLOOKUP
betrachtet. Aber da nicht alle Werte in der Kriterientabelle tatsächlich in der Datentabelle sind, habe ich Probleme, ihre Fähigkeit zu verwenden, gut mit ARRAYFORMULA
zu arbeiten. Bitte erleuchte mich. Vielen Dank.
Ich habe auch keinen Weg mit Arrayformula gefunden, jedoch können Sie bestehende Abfragen vereinfachen. Zum Beispiel kann max erhalten werden mit: = query (table1! $ A $ 1: $ B $ 8, "max (B) auswählen mit A> =" & table2! A2 & "und A <=" & table2! B2 & "Label max (B) '' ") –