有没有办法 "automate/loop" 在 Google 工作表中具有多行结果的过滤函数
Is there a way to "automate/loop" the filter function that has results with multiple rows in Google Sheets
令 A 列 = [D, A, A, B, A, C, B, D, D, D, E, E]
让 B 列 = [A, B, C, D]
=FILTER(A1:A10, B1:B4=$B1)
问题是,当你拖动并应用上面的公式时,因为有多个结果,你不一定能立即使用它,必须像
[=14 那样单独手动操作=]
C1=FILTER(A1:A10, B1:B4=B1)
C4=FILTER(A1:A10, B1:B4=B2)
C6=FILTER(A1:A10, B1:B4=B3)
C7=FILTER(A1:A10, B1:B4=B4)
正确的语法是:
={FILTER(A1:A, A1:A=B1);
FILTER(A1:A, A1:A=B2);
FILTER(A1:A, A1:A=B3);
FILTER(A1:A, A1:A=B4)}
但是你可以使用:
=SORT(A1:A)
按自定义顺序排序 - 整个数组:
=SORT(A1:A, MATCH(A1:A, B1:B, 0), 1)
按自定义顺序排序包括:
=FILTER(SORT(A1:A, MATCH(A1:A, B1:B, 0), 1),
REGEXMATCH(SORT(A1:A, MATCH(A1:A, B1:B, 0), 1), TEXTJOIN("|", 1, B1:B)))
令 A 列 = [D, A, A, B, A, C, B, D, D, D, E, E]
让 B 列 = [A, B, C, D]
=FILTER(A1:A10, B1:B4=$B1)
问题是,当你拖动并应用上面的公式时,因为有多个结果,你不一定能立即使用它,必须像
[=14 那样单独手动操作=]
C1=FILTER(A1:A10, B1:B4=B1)
C4=FILTER(A1:A10, B1:B4=B2)
C6=FILTER(A1:A10, B1:B4=B3)
C7=FILTER(A1:A10, B1:B4=B4)
正确的语法是:
={FILTER(A1:A, A1:A=B1);
FILTER(A1:A, A1:A=B2);
FILTER(A1:A, A1:A=B3);
FILTER(A1:A, A1:A=B4)}
但是你可以使用:
=SORT(A1:A)
按自定义顺序排序 - 整个数组:
=SORT(A1:A, MATCH(A1:A, B1:B, 0), 1)
按自定义顺序排序包括:
=FILTER(SORT(A1:A, MATCH(A1:A, B1:B, 0), 1),
REGEXMATCH(SORT(A1:A, MATCH(A1:A, B1:B, 0), 1), TEXTJOIN("|", 1, B1:B)))