Power BI单卡片视觉对象多日期度量值条件格式实现求助
Power BI多度量值卡片日期条件格式解决方案
方案1:动态度量值+字段参数(适配多卡片切换场景)
如果是用字段参数切换单卡片显示的度量值,可通过动态差值度量值实现统一条件格式:
- 创建字段参数
DateMetrics,把3个日期度量值全部添加进去 - 新建动态差值度量值:
DynamicDiffDay = VAR SelectedMetric = SELECTEDVALUE(DateMetrics[DateMetrics]) RETURN SWITCH( SelectedMetric, "2D LIV-C MAX DATE", DATEDIFF(TODAY(), PBS[2D LIV-C MAX DATE], DAY), "XXX MAX DATE", DATEDIFF(TODAY(), PBS[XXX MAX DATE], DAY), "YYY MAX DATE", DATEDIFF(TODAY(), PBS[YYY MAX DATE], DAY) )
- 将字段参数拖入卡片视觉对象,设置字体颜色条件格式时选择"基于字段",关联
DynamicDiffDay,再配置颜色规则即可。
方案2:通用差值度量值(适配单卡片多度量值场景)
如果单卡片同时显示3个度量值,可利用Power BI的动态度量值函数实现通用计算:
- 先在Power BI选项>预览功能中开启"允许在度量值中使用动态内容"
- 新建通用差值度量值:
GenericDiffDay = VAR CurrentMetric = SELECTEDMEASURE() RETURN DATEDIFF(TODAY(), CurrentMetric, DAY)
- 把3个日期度量值拖入卡片后,逐个选中每个度量值的数值,打开"条件格式">>"字体颜色",选择"基于字段"并关联
GenericDiffDay,再设置对应颜色规则即可。这个度量值会自动识别当前应用格式的度量值并计算差值。
方案3:直接在条件格式中写DAX(无需额外度量)
如果不想创建任何新度量,可直接在条件格式的规则里内嵌差值计算:
- 选中卡片里的某个日期度量值,打开"条件格式">>"字体颜色">>"高级控制"
- 选择"基于规则",添加规则时在"值"输入框中直接写DAX:
例如针对"2D LIV-C MAX DATE":DATEDIFF(TODAY(), PBS[2D LIV-C MAX DATE], DAY) - 配置颜色规则(比如差值≤0标红色,0<差值≤7标黄色),重复此步骤给另外两个度量值设置即可。
内容的提问来源于stack exchange,提问作者V_BI_MAR
相关产品推荐
相关产品推荐

