Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/google-sheets/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Google sheets 反向转置_Google Sheets - Fatal编程技术网

Google sheets 反向转置

Google sheets 反向转置,google-sheets,Google Sheets,我从另一个用户那里看到了这个解决方案,并得到了(Opal)的答复。我试图稍微修改一下结果,但却被空值卡住了。我有这个原始数据表(作为示例) idn | id名称| d1 | d2 | d3… id1 |/name1/| 23 | 13 | 56 id2 |/name2/| 67 | 45 | id3 |/name3/| 43 | id4 |/name4/| 78 | 34 | 45 . 我想将此列表转换为以下形式,以便上载到数据库,结果如下所示: id1 |/name1/| date1 | 2

我从另一个用户那里看到了这个解决方案,并得到了(Opal)的答复。我试图稍微修改一下结果,但却被空值卡住了。我有这个原始数据表(作为示例)

idn | id名称| d1 | d2 | d3…
id1 |/name1/| 23 | 13 | 56
id2 |/name2/| 67 | 45 |
id3 |/name3/| 43 |
id4 |/name4/| 78 | 34 | 45
.

我想将此列表转换为以下形式,以便上载到数据库,结果如下所示:

id1 |/name1/| date1 | 23
id1 |/name1/| date2 | 13
id1 |/name1/| date3 | 56
id2 |/name2/| date1 | 67
id2 |/name2/| date2 | 45
id3 |/name3/| date1 | 43
id4 |/name4/| date1 | 78
id4 |/name4/| date2 | 34
id4 |/name4/| date3 | 45
.
.

我如何做到这一点-我目前的解决方案如下,但不适用于空格。我看到了Opal解决方案,它可以处理空格,但无法确定如何创建日期列(结果中的第3列)

数组格式({transpose(split)(query)(rept(A2:A&“”,COUNTA(C1:1)),50000),“”),transpose(split)(rept(B2:B&“”,COUNTA(C1:1)),50000),“”),transpose(split)(JOIN(“),ArrayFormula(rept(JOIN(“,(query(C1:1)),”COUNTA(A2:A))),“”),transpose(split(JOIN(“,”,query(C2:M),,50000)),)))),“”)


有什么建议吗?这是一个大数据集,我达到了所有字符串函数的极限,rept极限为32000,join极限为50000
谢谢。

这是一个很好的公式。我相信你是的 请注意,如果空格为0,则公式有效。 我知道这不是一个完美的解决方案,但它是有效的。 在另一张图纸中,请使用:

=ArrayFormula({transpose(split)(rept(Sheet1!A2:A&“”,COUNTA(Sheet1!C1:1)),50000),“”),transpose(split(rept)(rept)(rept)(Sheet1!B2:B&“”,COUNTA(Sheet1!C1:1)),50000),“”),transpose(split(JOIN(“,ArrayFormula(rept(JOIN(“,(query(Sheet1!C1:1)),(query)(COUNTA)(Sheet1!A2:A)),“”),transpose(split)(split)(split)(JOIN(“),transpose)(JOIN)(JOIN(“,query(seet1!C1!C2:0))和“)转置)(,,50000)),“”)})

C2:E5+0
将空格替换为0,以便 这是公式的一部分。它不会影响原始数据。 这将返回格式正确的数据,但带有 不需要的0行。在另一张纸上,清理 不需要的行包含:

=查询(Sheet2!A:D,“选择*其中D!=0”)


这将以正确的格式返回所需的数据。

请添加指向您所指的“Opal解决方案”的链接,好吗?我遇到的另一个问题是连接函数中50000个字符的限制。它是一个大数据集,我正在达到所有字符串函数的限制,报告限制为32000,加入限制为50000。您可以单击问题下方的“编辑”链接,将其他信息直接添加到问题中。这样,阅读它的人将立即看到所有信息。