有没有一种方法可以从一个范围中索引/排列某些多个(非相邻)列



我有一个经过计算和筛选的范围,可以产生100多列。然而,我只想展示一小部分。

=INDEX(FILTER(IMPORTRANGE("https://docs.google.com/spreadsheets/d/1NLj6NBgU2z2V2ZKjr6-tRjITpYU9E5XOoklqTCEFrPo","Database!$B$2:$JT$1943")
,
(IMPORTRANGE("https://docs.google.com/spreadsheets/d/1NLj6NBgU2z2V2ZKjr6-tRjITpYU9E5XOoklqTCEFrPo",Tracker!B15)=Tracker!B16)
+
(IMPORTRANGE("https://docs.google.com/spreadsheets/d/1NLj6NBgU2z2V2ZKjr6-tRjITpYU9E5XOoklqTCEFrPo",Tracker!B15)=Tracker!B15))
,,7)

这个公式看起来相当复杂和长,但它只是一个标准的过滤器,有两个可能的正确解决方案——我只是从另一张表中提取数据。它根据变量筛选出1400多行。然后,在该筛选范围之外,它对所选列进行索引。

它目前只显示第7列,但我正在寻找它显示第7、255、261、256、266、262列。按这个顺序。

有办法做到这一点吗?我环顾四周,似乎找不到语法。很乐意使用完全改变原始公式的解决方案,但请记住,我希望最终在整个INDEX公式上使用SORT函数

提前谢谢。

可以玩的示例表;

https://docs.google.com/spreadsheets/d/1gj1E2lLPOz-kbGw4qB-fx9VhefN1vFbEiQHY57NaNSo/edit?usp=sharing

在选项卡"JPV_HELP"中,我在单元格C3 中输入

=IF($B$15="None","-",
QUERY(
IMPORTRANGE(
"https://docs.google.com/spreadsheets/d/1NLj6NBgU2z2V2ZKjr6-tRjITpYU9E5XOoklqTCEFrPo",
"Database!$B$2:$JT$1943"), 
"Select Col7, Col255, Col261, Col256, Col266 , Col262 
where Col266 matches '"&textjoin("|", 1, B15:B16)&"'", 1)
)

如果要按某一列进行排序,可以将其包含在查询中。

"Select Col7, Col255, Col261, Col256, Col266 , Col262 
where Col266 matches '"&textjoin("|", 1, B15:B16)&"' order by Col7 asc"

如果要按降序排序,请使用"desc"而不是"asc"。

看看这对你有用吗?

最新更新