【发布时间】:2018-10-28 20:05:24
【问题描述】:
我有一张如下表。该表会不时更新,因此不知道确切的行数:
+--+-------+-------------+
|a |red |1, 1, 1, |
+--+-------+-------------+
|b |green |2, 2, |
+--+-------+-------------+
|c |blue |3, |
+--+-------+-------------+
我需要根据第 3 列中的 COUNTA 重复每一行,如下所示:
+--+-------+-------------+
|a |red |1 |
+--+-------+-------------+
|a |red |1 |
+--+-------+-------------+
|a |red |1 |
+--+-------+-------------+
|b |green |2 |
+--+-------+-------------+
|b |green |2 |
+--+-------+-------------+
|c |blue |3 |
+--+-------+-------------+
我写了一个公式,但为了确保它处理足够多的行,我必须手动向该公式添加另一行(考虑列是 E、F 和 G):
={
if(len(E2)>0,{
transpose(split(rept(E2&"****",COUNTA(split(G2,", "))),"****")),transpose(split(rept(F2&"****",COUNTA(split(G2,", "))),"****")),TRANSPOSE(split(G2,", "))}
,{"","",""});
if(len(E3)>0,{
transpose(split(rept(E3&"****",COUNTA(split(G3,", "))),"****")),transpose(split(rept(F3&"****",COUNTA(split(G3,", "))),"****")),TRANSPOSE(split(G3,", "))}
,{"","",""});
if(len(E4)>0,{
transpose(split(rept(E4&"****",COUNTA(split(G4,", "))),"****")),transpose(split(rept(F4&"****",COUNTA(split(G4,", "))),"****")),TRANSPOSE(split(G4,", "))}
,{"","",""});
if(len(E5)>0,{
transpose(split(rept(E5&"****",COUNTA(split(G5,", "))),"****")),transpose(split(rept(F5&"****",COUNTA(split(G5,", "))),"****")),TRANSPOSE(split(G5,", "))}
,{"","",""})
}
等等
由于不知道确切的行数,我想将其转换为第 2-1000 行的 ARRAYFORMULA。
这可能吗?如果是,公式是什么?谢谢!
【问题讨论】:
标签: google-sheets array-formulas