Forum Discussion
Using FIRSTNONBLANK with a slicer.
I'm using this to identify the first value in a selection filtered by a slicer.
Arrival Price =
IF (
ISFILTERED ( Sheet1[Deal Reference Id] ) && HASONEVALUE ( Sheet1[Deal Reference Id] ),
FIRSTNONBLANK(Sheet1[Dealt Rate], 0 )
)
But it is returning the LOWEST value, not the first value. What am I doing wrong please?
Hi wooand
FirstNonBlank is like using a MIN function and will return the lowest value rather than the first item in a sequence.
In fact this is possible. The excellent Zubair Mohammed provided the following:
Arrival Price =
VAR FirstNonBlankTradeStartTime =
CALCULATE ( FIRSTNONBLANK ( VALUES ( Algo[Trade Start Time] ), TRUE () ) )
RETURN
CALCULATE (
FIRSTNONBLANK ( Algo[Dealt Rate], 1 ),
FILTER ( Algo, Algo[Trade Start Time] = FirstNonBlankTradeStartTime )
)Which works well.
2 Replies
- Phil_SeamarkMicrosoft Employee
Hi wooand
FirstNonBlank is like using a MIN function and will return the lowest value rather than the first item in a sequence.
- wooandHelper II
In fact this is possible. The excellent Zubair Mohammed provided the following:
Arrival Price =
VAR FirstNonBlankTradeStartTime =
CALCULATE ( FIRSTNONBLANK ( VALUES ( Algo[Trade Start Time] ), TRUE () ) )
RETURN
CALCULATE (
FIRSTNONBLANK ( Algo[Dealt Rate], 1 ),
FILTER ( Algo, Algo[Trade Start Time] = FirstNonBlankTradeStartTime )
)Which works well.