gpt4 book ai didi

sql - 是否有脚本可以绕过单元格公式的 50000 个字符?

转载 作者:行者123 更新时间:2023-12-04 16:01:19 25 4
gpt4 key购买 nike

我有这个(非常)长的公式,我需要在 Google 表格中运行,我遇到了限制错误:

There was a problem

Your input contains more than the maximum of 50000 characters in a single cell.

有解决办法吗?


我的公式是:

=ARRAYFORMULA(SPLIT(QUERY({B!A1:A100; ........ ; CA!DZ1:DZ100}, 
"select * where Col1 is not null order by Col1 asc", 0), " "))

完整公式为:pastebin.com/raw/ZCkZahpw

为 Pastebin 道歉......我在这里也有一些错误:

注意 1: 由于它是一个长公式,因此它的输出大小应为 ~100 行 × 3 列注意 2: 到目前为止,我设法绕过了 JOIN/TEXTJOIN 50000 多个字符,甚至 500000 个单元格的限制

最佳答案

Is there a script to bypass 50000 characters for in-cell formula?

如果 {B!A1:A100; 的长度…………; CA!DZ1:DZ100} 大于 50,000 个字符考虑构建一个为您构建数组的自定义函数。您可以对引用进行“硬编码”,或将它们列为文本范围内的内容,以供您的脚本读取。

然后,生成的公式可能如下所示:

 =ARRAYFORMULA(SPLIT(QUERY(MYCUSTOMFUNCTION(), 
"select * where Col1 is not null order by Col1 asc", 0), " "))

或者像这样

 =ARRAYFORMULA(SPLIT(QUERY(MYCUSTOMFUNCTION(A1:A1000), 
"select * where Col1 is not null order by Col1 asc", 0), " "))

(假设您有 1000 个引用)。

自定义函数之所以有效,是因为它在 Google 表格端而不是具有超出单元格内容限制的公式,它将只使用几个字符,并且因为通过使用良好的做法,可以使它花费的时间少于 30 秒他们的执行限制。

值得注意的是,如果使用 MYCUSTOMFUNCTION() 变体(不带参数),它只会在电子表格打开时重新计算,但 MYCUSTOMFUNCTION(A1:A1000) 每次范围引用中的单元格更改时,都会重新计算变体(以范围引用作为参数)。

引用资料

关于sql - 是否有脚本可以绕过单元格公式的 50000 个字符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54727816/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com