指标公式计算规则
1. 概述
1.1 聚合计算写公式入口
在图表/表格中,点击「+」新增「指标」添加聚合计算字段。计算公式不仅支持聚合函数,还支持其他的函数,方便实现不同场景的聚合计算要求。

1.2 支持的函数
类型 | 函数 | 帮助文档 |
聚合函数 |
| |
逻辑函数 |
|
2. 应用场景
在图表指标计算中,除了聚合函数外,支持使用逻辑函数。可以在指标公式里完成条件汇总、异常值处理、聚合结果判断等计算,不需要再通过高级模式、分类汇总或额外计算字段绕行。
适用场景包括:
- 计算聚合后的比例,并处理除零异常
- 按条件汇总某类数据
- 根据聚合结果输出数值判断结果
- 在聚合指标中使用 if、iferror 等逻辑函数
2.1 聚合后异常值处理
例如,计算利润率时,如果销售额为 0,可能会出现除零异常。
可以写成:
IFERROR(SUM([利润])/SUM([销售额]),0)含义是:
- 先计算 SUM([利润]) / SUM([销售额])
- 如果计算异常,则返回 0
2.2 条件汇总SUMIF
例如,只统计科目为「销售」的数据。
可以写成:
SUM(IF(科目="销售",[销售额],0))含义是:
- 在明细层判断 [科目] 是否为「销售」
- 如果满足条件,则返回 [销售额]
- 如果不满足条件,则返回 0
- 最后对返回结果进行汇总求和
注:不建议写成 IF([科目]="销售",SUM([销售额]),0),因为该写法在同一层中混用了明细字段和聚合结果。
2.3 根据聚合结果输出数值判断
例如,依据图表的拖入的分组维度,依据销售额大小得到动态的判断结果,若销售额大于 100 时返回 1,否则返回 0。

可以写成:
IF(SUM([销售额])>100,1,0)
注:图表指标最终结果必须是数值,因此这里应返回 1/0 ,不能返回文本。
3. 聚合计算规则
3.1 最终输出必须为聚合性质
图表指标的最终结果必须是聚合计算,不能是标量(明细)值。否则报错「指标必须为聚合性质」如下图所示:

上方公式应改为:
AND(SUM([销售额])>1000,SUM([毛利])>500)
注:AND 逻辑判断为 TRUE ,返回 1 ,否则为 0 。
3.2 最终输出必须为数值类型
图表指标的结果必须是数值类型,不能是文本或其他类型。否则报错「指标结果必须为数值类型」如下图所示:

上方公式应改为:
IF(SUM([销售额])>1000,1,0)
3.3 同一层计算中不能混用明细字段和聚合结果
同一层表达式中,不能同时使用明细字段和聚合结果。否则报错「[函数名/连接符号] 不支持明细与聚合混用」如下图所示:

上方公式应改为:
SUM([销售额])-SUM([毛利])
4. 常见聚合公式写法
目标 | 推荐写法 |
普通聚合指标 | SUM([销售额]) |
明细层先计算,再聚合 | SUM([销售额]-[利润]) |
同一层均为聚合结果,进行计算 | SUM([销售额])-SUM([利润]) |
条件汇总 | SUM(IF([科目]="销售",[销售额],0)) |
比率计算 | SUM([利润])/SUM([销售额]) |
聚合后异常处理 | IFERROR(SUM([利润])/SUM([销售额]),0) |
聚合结果数值判断 | IF(SUM([销售额])>100,1,0) |
以下场景不支持
不支持场景 | 示例 | 原因 |
最终输出明细值 | [销售额] | 图表指标最终必须是聚合结果 |
明细条件直接返回聚合结果 | IF([科目]="销售",SUM([销售额]),0) | 同一层混用了明细字段和聚合结果 |
输出文本结果 | IF(SUM([销售额])>100,"高","低") | 图表指标最终必须是数值类型 |
纯文本/字符处理 | LEFT([客户名称],6) | 这类计算应在分析步骤或计算字段中完成 |

400-111-0890
在线咨询