找回密码
 立即注册

QQ登录

只需一步,快速开始

古月梓彬
金牌服务用户   /  发表于:2024-9-14 10:02  /   查看:537  /  回复:6
本帖最后由 Wilson.Zhang 于 2024-9-27 16:48 编辑

产品:GcExcel
版本:7.1.5
调研编号:DOCXLS-11209
Last Review:2024-09-27
当前进展:用户文件中几乎每个单元格都包含了SUMIFS函数,每个单元格计算都会迭代AK$2:AK$20004,整表计算需要迭代202000020000次。建议优化函数写法以减少迭代次数,或者使用数据透视表,时间复杂度为O(n)。

【GCExcel7.1.5】sjs文件,open后再save,耗时严重,会卡死 - SpreadJS & GcExcel专区 - Bug反馈 - 葡萄城开发者社区 (grapecity.com.cn)
跟这个同样的现象,save卡死。   复现文件见附件, 已经按之前给出的方案把整列的设置为区域行了。

save.txt.sjs

2.73 MB, 下载次数: 6

6 个回复

倒序浏览
Wilson.Zhang
超级版主   /  发表于:2024-9-14 12:24:14
沙发
您好!解析您提供的压缩包文件异常,请您检查后重新上传。
回复 使用道具 举报
古月梓彬
金牌服务用户   /  发表于:2024-9-14 17:41:13
板凳
Wilson.Zhang 发表于 2024-9-14 12:24
您好!解析您提供的压缩包文件异常,请您检查后重新上传。

之前的问题已确认,是循环调用getuseRange耗时引起的, 能优化循环。  后续处理问题又发现现在的问题,save耗时
回复 使用道具 举报
Wilson.Zhang
超级版主   /  发表于:2024-9-14 17:54:39
地板
古月梓彬 发表于 2024-9-14 17:41
之前的问题已确认,是循环调用getuseRange耗时引起的, 能优化循环。  后续处理问题又发现现在的问题,sa ...

我们调研一下给您结论。
回复 使用道具 举报
Wilson.Zhang
超级版主   /  发表于:2024-9-19 17:50:16
5#
您好!我们从您提供的文件中发现几乎每个单元格包含一个SUMIFS函数,每个单元格的计算都会迭代AK$2:AK$20004,导致整个工作表需要迭代202000020000次,这是”慢“的原因所在。

由于文件中不包含数据,我们无法确定怎样的优化方案更适合您的需求场景。如果您的需求场景大量使用到SUMIFS函数,可以使用数据透视表处理,数据透视表更快。您可以自行斟酌下。
回复 使用道具 举报
Wilson.Zhang
超级版主   /  发表于:2024-9-27 16:49:15
6#
您好!请问下您这个问题当前进展如何了?如果仍未解决,可以提供一个包含数据的文件,我们再调研尝试下。
回复 使用道具 举报
Wilson.Zhang
超级版主   /  发表于:2024-9-29 10:22:57
7#
您好!请问下您这个问题当前进展如何了?如果仍未解决,可以提供一个包含数据的文件,我们再调研尝试下。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部