是否可以在一个单元格中存储Google电子表格数组,然后引用它?
我有一张桌子,我用它来收集一系列相关的线条。我需要对过滤后的数组做几件事:计算元素的数量并对元素求和。目前我必须多次重复FILTER功能,因为我无法在一个单元格中托管其输出。将FILTER输出存储在一个单元格中会更好,然后使用另一个单元格,例如“= SUM(B1)”和“= COUNT(B1)”。
我发现NOEXPAND禁用添加CONTINUE单元格,但是如果我写“= COUNT(B1)”,结果为1 - 我只计算数组的第一项。
谢谢!
编辑:出于某种原因,我无法回答我自己的问题,但我发现你可以在javascript中编写自己的函数。您甚至可以使用JSON序列化数组,并将结果保存为字符串。所以,作为一个基本的例子,你可以写:
function serialize(a) {
return JSON.stringify(a);
}
function deserialize(a) {
return JSON.parse(a);
}
答案 0 :(得分:2)
您可以使用JOIN
将数组作为文本存储在单个单元格中。
它不太理想,因为您每次使用SPLIT
时仍需要解组它,但它对存储复杂过滤器非常有用。
例如:
A1: =TRANSPOSE({1,2,3,4,5,6,7,8,9,10})
B1: =TRANSPOSE({3,1,1,2,1,1,1,1,1,0})
C1: =JOIN(",",FILTER(A1:A10, B1:B10 > 0, B1:B10 < 3))
COUNT(SPLIT(C1,",")) == 8
与
相比COUNT(FILTER(A1:A10, B1:B10 > 0, B1:B10 < 3)) == 8