多维表格公式计算优化指南

多维表格公式计算优化指南

本文阅读时长:6 分钟
一、性能诊断功能
在使用多维表格公式和查找引用功能的过程中,如果在进行筛选、分组、排序或滚动操作时感到卡顿,或者在计算过程中发现公式运行时间过长,可以使用多维表格的性能诊断工具进行快速排查,并参考下文提供的优化方法进行优化。
:在升级至新版多维表格后,多维表格将从浏览器计算模式切换为服务端计算模式。在服务端计算模式下,计算任务将由云端处理,不占用本地电脑资源,运算性能提升,运行更流畅。
二、术语解释
  • 慢查询公式:指计算服务中正在运行的计算耗时较长的公式,通常为 FILTERCOUNTIFSUMIF 这类查询函数;
  • FILTER、COUNTIF、SUMIF 函数:是多维表格中的一类统计数据函数,可以筛选指定条件的数据或内容,并在此基础上进行求和、计数等后续运算;
  • 二元运算符:包括 =、!=、<、>、<=、>=、&&、II、CONTAIN 等;
  • 公式卡顿:指在多维表格中,对公式字段进行筛选、分组、排序、查找或者页面滚动等操作时,公式求值计算耗时过长导致页面加载速度缓慢。
三、常见慢查询公式场景
场景:条件中直接对 CurrentValue.列名进行运算,且引入多个变量
问题描述
场景中筛选指定关键词的反馈数量,有性能风险的公式引入了变量“关键词”,这种运算中的模糊匹配会导致每行的运算都会进入“销售反馈”列进行扫描,产生了慢查询。
有性能风险
销售反馈.FILTER(
CurrentValue.反馈详情.CONTAINTEXT(关键词)
).反馈数量.COUNTA()
无性能风险
将“销售反馈”列的“销售详情”添加关键词标签,即“反馈标签”,减少引入变量。
销售反馈.FILTER(
CurrentValue.反馈标签=关键词
).反馈数量.COUNTA()
四、公式优化方法和原则
在数据量增大时,慢查询公式消耗的算力会呈指数级增长,拖慢多维表格的运行。如若出现多维表格性能卡顿问题,建议按照以下方式进行慢查询公式优化。
方法 1:筛选修正慢查询公式
  • 功能入口:在多维表格右下方找到悬浮图标,点击最上方 性能诊断
250px|700px|reset
  • 筛选问题公式:在性能诊断面板,筛选 慢查询 长耗时 公式,并按照提示进行公式修改。
250px|700px|reset
方法 2:编写公式尽量遵守范式
公式范式
销售总表.FILTER(
CurrentValue.列名操作符=/>=/<=/!=列名/常量&&
CurrentValue.列名操作符=/>=/<=/!=列名/常量&&
CurrentValue.列名操作符=/>=/<=/!=列名/常量
)
.结果
.LISTCOMBINE()
.SUM()/COUNTA()/UNIQUE()
详细示例
销售总表.FILTER(CurrentValue.销售人员=销售人员&&CurrentValue.销售额>0).销售额.SUM()
方法 3:复杂场景考虑使用插件
若需在多维表格中对大量数据进行分析运算,或需要在多维表格中引入多种变量进行运算,有关多维表格插件的具体信息,请参考使用多维表格插件
方法 4:运算中尽量减少使用变量
场景描述
场景中需要计算不同人员不同年份的销售总额。
有性能风险
采用多个变量列:
列 1:Table.FILTER(CurrentValue.年份=2021&&CurrentValue.人员=姓名).销售额.SUM()
列 2:Table.FILTER(CurrentValue.年份=2022&&CurrentValue.人员=姓名).销售额.SUM()
无性能风险
使用一个变量列:
Table.FILTER(CurrentValue.年份=年份列&&CurrentValue.人员=姓名).销售额.SUM()
250px|700px|reset
作者Lark 帮助中心
最后更新于2025-03-11
评价此内容
提交成功,感谢你的反馈!
未能解决你的问题?请联系在线客服
rangeDom