如何在Tableau工作表中实现多级利润表编制及分类汇总值计算
Tableau多级利润表跨汇总项计算解决方案
步骤1:创建排序控制字段
新建计算字段科目排序标记,用于固定利润表科目展示顺序:
CASE [会计科目] WHEN "Gross Sales" THEN 1 WHEN "Discounts" THEN 2 WHEN "Net Sales" THEN 3 WHEN "COGS" THEN 4 WHEN "Gross Profit" THEN 5 // 后续新增利润表科目依次顺延序号即可 END
步骤2:创建基础指标计算字段
分别创建三个基础指标的LOD计算字段,可根据实际分组维度调整FIXED后的维度列表:
- 总销售额:
{FIXED [交易日期], [产品类别], [产品]: SUM(IF [会计科目] = "Gross Sales" THEN [amount] END)} - 折扣额:
ABS({FIXED [交易日期], [产品类别], [产品]: SUM(IF [会计科目] = "Discounts" THEN [amount] END)}) - 成本额:
ABS({FIXED [交易日期], [产品类别], [产品]: SUM(IF [会计科目] = "COGS" THEN [amount] END)})
步骤3:创建利润表统一取值字段
新建计算字段利润表展示值,统一处理不同科目的计算逻辑:
CASE [会计科目] WHEN "Gross Sales" THEN ABS([总销售额]) WHEN "Discounts" THEN [折扣额] WHEN "Net Sales" THEN [总销售额] - [折扣额] WHEN "COGS" THEN [成本额] WHEN "Gross Profit" THEN ([总销售额] - [折扣额]) - [成本额] // 后续新增科目直接补充对应计算逻辑即可 END
步骤4:搭建视图
- 将
会计科目、产品类别、产品依次拖入行功能区,形成多级层级结构 - 将
利润表展示值拖入文本标记卡 - 右键行功能区的
会计科目,选择「排序」,排序依据选择科目排序标记,排序顺序为升序,保证科目顺序符合利润表规范 - 点击顶部菜单栏「分析」-「合计」-「显示行合计」,开启多级分类汇总
步骤5:格式调整
右键利润表展示值字段,选择「设置格式」,在数字格式中自定义为#,##0.00;-#,##0.00,即可实现仅毛利为负时展示负数,其余数值均展示为正数。
适配说明
如果不需要按产品、产品类别拆分维度,直接删除FIXED后对应的维度参数即可,仅保留你需要的分组维度(如仅按交易日期统计则仅保留[交易日期]字段)。
内容的提问来源于stack exchange,提问作者TomLenzmeier
相关产品推荐
相关产品推荐

