我有一个电子表格,在一个标签中,我有一个表,其中包含来自其他标签的计算数据。这是11列的小桌子。 Row(1)是标题行,Column A是项目列表,B到J列是类型。数据仅包含数字。
在计算数据时,从B到J的某些列中的time-time值可以完全为零。我想使用QUERY创建此表的子集,但构造一个动态范围,仅获取具有至少1个值且大于零的列。
我知道可以将范围创建为类似{A:A \ B:B \ D:D}的数组,但就我而言,我不知道哪些列的值可以大于零,不想将列的值完全设为零。
我创建了一个表达式来将该数组值连接为单元格中的文本,但是无论是INDEX还是TEXT函数,我都无法将其与QUERY公式一起使用。表格是这样的:
商品TypeA TypeB TypeC TypeD
青铜0 0 0 0
银0 0 1 0
黄金0 0 1 0
Titanimum 1 0 0 0
对于此表快照,我希望QUERY范围为 {A:A \ B:B \ D:D} 。但是,在计算数据时,表格可能会在2小时或第二天之后如下所示:
商品TypeA TypeB TypeC TypeD
青铜1 0 0 1
银0 0 1 0
黄金0 1 1 0
Titanimum 1 0 0 0
因此,对于此表快照,我希望查询范围为 {A:A \ B:B \ C:C \ D:D \ E:E} 。。 >
这可行吗?以及如何实现或构建动态QUERY范围?
感谢大家...
答案 0 :(得分:1)
您可以使用FILTER命令根据条件从范围中删除列。
未过滤
Items TypeA TypeB TypeC TypeD TypeE TypeF TypeG
Bronze 1 0 0 1 0 0 1
Silver 1 1 0 1 0 0 1
Gold 1 0 0 1 0 0 1
Titan 1 0 0 1 1 0 1
1 4 1 0 4 1 0 4
已过滤以删除总数为0的列
Items TypeA TypeB TypeD TypeE TypeG
Bronze 1 0 1 0 1
Silver 1 1 1 0 1
Gold 1 0 1 0 1
Titan 1 0 1 1 1
“技巧”是对列数据求和(例如),然后测试> 0
过滤器表达式为:
=FILTER(A1:H5,A6:H6 >0)
通过解释方式:
A1:H5
是要过滤的范围;
A6:H6 >0
选择第6行中所有值> 0的列
我在A6中放置了1,以确保包含colA。
您现在可以对以上表达式返回的范围进行查询。