Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/powerbi/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Calendar 如何选择非空日期_Calendar_Powerbi_Dax - Fatal编程技术网

Calendar 如何选择非空日期

Calendar 如何选择非空日期,calendar,powerbi,dax,Calendar,Powerbi,Dax,在power BI中,我计算的是去年股价指数水平之间的百分比差异 Ann pch = VAR __EarliestValue = CALCULATE(SUM('Equity Markets (2)'[Value]), DATEADD(LASTDATE('Calendar'[Date]),-1,YEAR)) VAR __LastDateValue = CALCULATE(SUM('Equity Markets (2)'[Value]),

在power BI中,我计算的是去年股价指数水平之间的百分比差异

 Ann pch = 

VAR __EarliestValue =   CALCULATE(SUM('Equity Markets (2)'[Value]),
                         DATEADD(LASTDATE('Calendar'[Date]),-1,YEAR))

VAR __LastDateValue = CALCULATE(SUM('Equity Markets (2)'[Value]),
                        LASTDATE('Calendar'[Date]))

RETURN
CALCULATE(
    DIVIDE(__LastDateValue,__EarliestValue) -1)
上面的说法是正确的,但有一个错误:有些日期在周末或其他非交易日,在这种情况下,我想为
\uuuuuuEarliestValue
选择下一个非空值,而在
\uuuuuuLastDateValue
情况下选择上一个非空值

有谁能推荐实现这一点的代码吗

我非常熟悉DAX/Power BI。多谢各位

数据样本:


我根据“股票市场(2)”栏[Date]创建了一个切片器

注意:不要在你的日历日期制作切片器,这样你就会有“洞”

然后我用以下公式创建了一个度量:

Measure = LOOKUPVALUE(EquityMarkets[Value];EquityMarkets[Date]; MAX(EquityMarkets[Date]))/ LOOKUPVALUE(EquityMarkets[Value];EquityMarkets[Date]; MIN(EquityMarkets[Date]))
这是我在视觉卡中显示的度量。结果是在使用切片器时进行了计算


我想知道您的计算是否有效:DateAdd用作过滤器,但不会返回任何内容,因为您输入了一个日期?你能给我一些样本数据吗?我想我能帮你。谢谢。我不知道分享数据的好方法,我倒了一些截图。代码并没有经过详尽的QA,但似乎是正确的-除了bug…非常感谢您的回复。这是一个很好的解决办法,但这不是我想要的。我希望面板从当前日期开始计算年度变化,而不是手动设置切片器。第二个问题是在表中使用日期而不是日历的稳健性——我有其他我想常用的表,但它们可能有唯一的单独日期。因此,我急于编写由日历表驱动的代码。