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
Performance 确定延长时间的原因;计算公式……”;通知_Performance_Google Sheets_Google Sheets Formula - Fatal编程技术网

Performance 确定延长时间的原因;计算公式……”;通知

Performance 确定延长时间的原因;计算公式……”;通知,performance,google-sheets,google-sheets-formula,Performance,Google Sheets,Google Sheets Formula,我最近处理了一份工作数据表,每张数据表大约有30张,共数千行,其中许多单元格颜色各异。大多数表格只有原始数据;一些工作表有公式/阵列公式 这是我工作手册的一部分: 在红色圆圈中,您可以看到“计算公式…”。这经常出现在我的工作表中,通常是在我编辑任何工作表中任何单元格中的任何内容时 我遵循https://www.benlcollins.com/spreadsheets/slow-google-sheets/这对我的处境没有多大帮助。是的,全部27个 现在我想知道的是,有没有办法知道Google

我最近处理了一份工作数据表,每张数据表大约有30张,共数千行,其中许多单元格颜色各异。大多数表格只有原始数据;一些工作表有公式/阵列公式

这是我工作手册的一部分:

在红色圆圈中,您可以看到“计算公式…”。这经常出现在我的工作表中,通常是在我编辑任何工作表中任何单元格中的任何内容时

我遵循
https://www.benlcollins.com/spreadsheets/slow-google-sheets/
这对我的处境没有多大帮助。是的,全部27个

现在我想知道的是,有没有办法知道Google Sheets在“计算公式…”栏出现期间做了什么?因此,我可以看到哪个函数/公式占用了我宝贵的时间,然后对其进行改进

编辑--

既然我不能分享工作表,至少我会分享工作公式,这样你们就能知道工作表在做什么

在工作时,这些将被粘贴以获取输入数据。然后将结果值再次粘贴到数据表中。这些公式仅在工作表中:

此公式用于设置数据的状态——仅在工作表中:

该公式被放置在所有数据表中。它将获得E列中的值,将它们转换为指向服务器中相应数据的链接:

这些是主要的公式

工作表中有一个公式,但通过在下面一个单元格中放置一个值来关闭该公式。(不是我。我仍在努力解决这个问题。即使是床单制造商也不确定他为什么这么做)

我通过设置一个带有开关的
if
(Benlcollins的想法)来拒绝上一个公式,但没有多大帮助

看了所有的公式后,我想我的表格的问题可能在于添加链接的数组公式。。我现在要修补一下

尽管如此,问题仍然存在。。是否有任何工具/脚本/插件可以显示google电子表格在这些“计算公式…”栏下所做的工作


请注意,此工作表未使用任何脚本,以防您怀疑onEdit(e)中是否有任何内容。

我在您链接的列表中没有看到sumproduct()调用。你查过了吗?根据我的经验,它们经常是慢电子表格的来源,在这种情况下,它们可以被更快的mmult()所取代。除此之外,我不知道任何调试GSheet性能的通用方法。使用
间接
通常也会导致过度的重新计算。考虑共享一些例子的实际公式在美国。IMO,BenCollins是完全错误的。我建议您使用ARRAYFORMULAS进行性能测试。考虑将所有哑索引/匹配公式更改为数组公式/VLoopUp()或Quices()。删除所有空行。如果可能,避免所有条件格式,除非必要。@ttarchala否,没有求和。这张纸不是关于财务或任何与数字有关的东西。要存储的普通数据用于管理我们车间的工作。因此,如果有关系的话,没有总数,没有计数。@I'-'I是的,我同意你关于公式的排列部分。我曾亲身体验过,与500个单独的sumif相比,使用sumif的阵列公式在500行中工作的速度有多快。嗯,在这些方法中,我发现#4-使用开发者工具看起来很有趣。我现在正在搞砸它,我希望我能想出一些办法。。
=VLOOKUP($D2,TEMP!$A$1:$AT$99,23,FALSE)
=VLOOKUP($D2,TEMP!$A$1:$AT$99,11,FALSE)
=VLOOKUP($D2,TEMP!$A$1:$AT$99,16,FALSE)
=REGEXREPLACE(TO_TEXT(VLOOKUP($D2,TEMP!$A$1:$AT$99,17,FALSE)), "^84", "0")
=VLOOKUP($D2,TEMP!$A$1:$AT$99,46,FALSE)
=VLOOKUP($D2,TEMP!$A$1:$AT$992,18,FALSE)

=CONCATENATE(VLOOKUP($D3,TEMP!$G$1:$AS$492,9,FALSE), ",", VLOOKUP($D3,TEMP!$G$1:$AS$492,10,FALSE), ",", VLOOKUP($D3,TEMP!$G$1:$AS$492,7,FALSE))
=VLOOKUP($D3,TEMP!$G$1:$AS$492,6,FALSE)
=REGEXREPLACE(TO_TEXT(VLOOKUP($D3,TEMP!$G$1:$AS$492,12,FALSE)), "^84", "")
ARRAYFORMULA(IF(ISERROR(MATCH(E7:E10178,DonHangTraVe!A1:A20014,0)),IF(ISERROR(MATCH(D7:D10178,DonHangTraVe!C1:C20014,0)),IF(ISERROR(MATCH(D7:D10178,LAZ_Delivered!B1:B20000,0)),"","Received"),"Returned"), "Lost")))
=ARRAYFORMULA(IF(ROW(F:F)=1,"LINK", IF(LEN(E:E)=13, HYPERLINK("http://www._____________________?key=" & E:E, E:E), "")))
=ArrayFormula(trim(concatenate(filter(indirect("AQ1:AQ500")&" "&REGEXREPLACE(indirect("AR1:AR500"), "Dòng sản phẩm tương thích:.+",""), indirect("G1:G500")=G1)&CHAR(10))))