You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Power BI中DAX实现:排除当前地点的关联客户跨区域销售额(带图例)

问题解决:DAX度量值修改以实现图例正确展示

问题根源

当前度量值无法按其他销售地点拆分展示,核心原因是:当你选中基准销售地点后,Sales[sales location]的筛选上下文被限制为该地点,导致图例只能显示选中的地点;同时原有代码未移除销售地点的筛选限制,无法加载其他地点的数据。

修改后的DAX代码

Cross sell areas = 
VAR SelectedBaseLocation = SELECTEDVALUE(Sales[sales location])
-- 获取在基准地点有消费记录的客户列表
VAR CustomersInBaseLocation = CALCULATETABLE(
    VALUES(Sales[customer]),
    Sales[sales location] = SelectedBaseLocation
)
RETURN
CALCULATE(
    SUM(Sales[sales amount]),
    -- 仅统计基准地点的客户
    Sales[customer] IN CustomersInBaseLocation,
    -- 排除基准地点本身
    Sales[sales location] <> SelectedBaseLocation,
    -- 移除销售地点的筛选限制,让其他地点能在图例中展示
    REMOVEFILTERS(Sales[sales location])
)

代码逻辑说明

  1. SelectedBaseLocation:获取你选中的基准销售地点(如beach、mall);
  2. CustomersInBaseLocation:提取所有在该基准地点有消费记录的客户;
  3. CALCULATE计算块:
    • 对符合条件的销售额求和;
    • 限定计算范围为基准地点的客户;
    • 排除基准地点本身,只统计其他地点的销售额;
    • REMOVEFILTERS(Sales[sales location])解除销售地点的筛选锁定,让其他地点的数据能在图例中正常展示。

图表设置调整

将sales location字段拖入图表的图例区域,把修改后的度量值拖入值区域。此时选中任意基准地点,图例会自动拆分展示其他地点的销售额分布:

  • 选中beach时,图例显示mall(€40)和office(€15)
  • 选中mall时,图例显示beach(€50)和office(€35)
  • 选中office时,图例显示beach(€75)和mall(€60)

内容的提问来源于stack exchange,提问作者Dalydoba

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.15 18:15:28