Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

The ultimate Microsoft Fabric, Power BI, Azure AI & SQL learning event! Join us in Las Vegas from March 26-28, 2024. Use code MSCUST for a $100 discount. Register Now

Reply
setis
Post Partisan
Post Partisan

IF and SELECTEDVALUE with multiple conditions

Dear experts,

I have the following issue. 
I have a slicer with several elements. When 2 specific elements are selected, I want a specific calculation and if they are not, I want another one. 

 

I'm trying:

 

IF(
        SELECTEDVALUE(G_L Entry'[BU]) = "B2B"||
        SELECTEDVALUE(G_L Entry'[BU]) = "B2I";
        [Revenue] * [ExchRateCurrency];
        "" )

 

Another way that it's not working either: 

IF(
OR(  
        SELECTEDVALUE(G_L Entry'[BU]) = "B2B";
        SELECTEDVALUE(G_L Entry'[BU]) = "B2I");
        [Revenue] * [ExchRateCurrency];
        "" )

 

Could somebody help, please?

 

1 ACCEPTED SOLUTION
tex628
Community Champion
Community Champion

Sorry i was abit to quick there! 🙂 

IF(
AND(
        FIRSTNONBLANK(G_L Entry'[BU];G_L Entry'[BU]) = "B2B" ||
        FIRSTNONBLANK(G_L Entry'[BU];G_L Entry'[BU]) = "B2I" ;
        LASTNONBLANK(G_L Entry'[BU];G_L Entry'[BU]) = "B2B" ||
        LASTNONBLANK(G_L Entry'[BU];G_L Entry'[BU]) = "B2I" ) ;
        [Revenue] * [ExchRateCurrency];
        "" )

Connect on LinkedIn

View solution in original post

5 REPLIES 5
tex628
Community Champion
Community Champion

 While there is more than 1 value in G_L Entry [BU] selectedvalue() will always return blank(). That is why your measure is not working. You need to use FIRSTNONBLANK() and LASTNONBLANK() to find the two values. 

IF(
AND(
        FIRSTNONBLANK(G_L Entry'[BU]) = "B2B" ||
        FIRSTNONBLANK(G_L Entry'[BU]) = "B2I" ;
        LASTNONBLANK(G_L Entry'[BU]) = "B2B" ||
        LASTNONBLANK(G_L Entry'[BU]) = "B2I" ) ;
        [Revenue] * [ExchRateCurrency];
        "" )


Br,
J


Connect on LinkedIn

@MartynRamsden I am getting blanks when those are selected.


@tex628 Sounds logical. Thanks. 
I think that I'm missing someting. I am getting the error "Too few arguments were passes to the FIRSTNONBLANK function. The minimum argument count for the function is 2."

tex628
Community Champion
Community Champion

Sorry i was abit to quick there! 🙂 

IF(
AND(
        FIRSTNONBLANK(G_L Entry'[BU];G_L Entry'[BU]) = "B2B" ||
        FIRSTNONBLANK(G_L Entry'[BU];G_L Entry'[BU]) = "B2I" ;
        LASTNONBLANK(G_L Entry'[BU];G_L Entry'[BU]) = "B2B" ||
        LASTNONBLANK(G_L Entry'[BU];G_L Entry'[BU]) = "B2I" ) ;
        [Revenue] * [ExchRateCurrency];
        "" )

Connect on LinkedIn

@tex628 Perfect. It works. Thank you so much!

@MartynRamsden Thanks a lot for your help too. 

MartynRamsden
Solution Sage
Solution Sage

Hi @setis 

 

Both expressions look ok to me.  What result are you seeing?

 

Have you tried IN?

Measure = 
IF(
    SELECTEDVALUE( G_L Entry'[BU] ) IN { "B2B", "B2I" };
    [Revenue] * [ExchRateCurrency];
    ""
)

 

Best regards,
Martyn


If I answered your question, please help others by accepting it as a solution.

Helpful resources

Announcements
Fabric Community Conference

Microsoft Fabric Community Conference

Join us at our first-ever Microsoft Fabric Community Conference, March 26-28, 2024 in Las Vegas with 100+ sessions by community experts and Microsoft engineering.

February 2024 Update Carousel

Power BI Monthly Update - February 2024

Check out the February 2024 Power BI update to learn about new features.

Fabric Career Hub

Microsoft Fabric Career Hub

Explore career paths and learn resources in Fabric.

Fabric Partner Community

Microsoft Fabric Partner Community

Engage with the Fabric engineering team, hear of product updates, business opportunities, and resources in the Fabric Partner Community.