如果是12月,如何不返回上个月的值?

问题描述 投票:0回答:1

我需要根据日期选择器返回上个月的值(年初至今),但是,如果是去年 12 月,我不想返回它。例子。现在是 2023 年 1 月,我不想返回 2022 年 12 月的值。我尝试使用此方法,但它没有执行任何操作:

VAR vLastMonth =
CALCULATE(
EOMONTH(MAX( DateTable[Date] ),-1),
ALLSELECTED( DateTable[Date] )
)

RETURN 

CALCULATE(
    TOTALYTD(
    SELECTEDMEASURE(),
    'DateTable'[Date]
    ),
        FILTER(
            ALL('DateTable'), 
            'DateTable'[Month] = MONTH(vLastMonth)
            &&
            'DateTable'[Year] = YEAR(vLastMonth)
        )
    )

vLastMonth 测量工作正常并返回上个月末。其余代码不会抛出错误,但也根本无法正常工作,仍然采用 12 月的值:

我的桌子未按预期工作的屏幕截图

如何在我的代码中修复它?

powerbi dax
1个回答
0
投票

仅检查相关月份是否为 12 月,如果是,则返回 0 而不是上个月怎么样?

VAR vLastMonth = 
    CALCULATE(
        EOMONTH(MAX(DateTable[Date]), -1),
        ALLSELECTED(DateTable[Date])
    )

RETURN 
    IF(
        MONTH(vLastMonth) = 12,
        BLANK(),    // Return 0 instead if you'd like
        CALCULATE(  // Rest of your measure goes here
© www.soinside.com 2019 - 2024. All rights reserved.