Forum Discussion

setis's avatar
setis
Icon for Post Partisan rankPost Partisan
6 years ago
Solved

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?

 

  • 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];
            "" )

6 Replies

  • 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.

  • tex628's avatar
    tex628
    Icon for Community Champion rankCommunity 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

    • setis's avatar
      setis
      Icon for Post Partisan rankPost Partisan

      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's avatar
        tex628
        Icon for Community Champion rankCommunity 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];
                "" )