是否可以将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);
}
最佳答案 您可以使用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