Forum Discussion

Lotfi96's avatar
Lotfi96
Regular Visitor
2 years ago
Solved

Using Calculate function with special conditions

Hello,

 

I ran in a bit of an issue while trying to write a measure. Here's an example of currencies.

CountryCurrency
USAUSD
UKGBP

 

What I'm trying to do is calculate the sum of sales with different formulas depending on the currency, at first I tried doing things like this: 

 

K€ SUM = CALCULATE((SUM(Data[Sales])/1000),Data[Currency]<>"USD")

K€ USD = CALCULATE((SUM(Data[Sales])/10),Data[Currency]="USD") 

 

When using both of these measures in values field, I'll end up with double the inital number of columns on my visual and half of them are blank (because of the filters in the previous measures).

 

My question is: Is there a way to somehow combine these two measures into one experession while not having having blank columns?

 

Any help would be apreciated. 

 

  • Lotfi96 try this:

     

    Sum = 
    SUMX ( 
        Data, 
        VAR __Factor = IF ( Data[Current] = "USD", 10, 1000 )
        RETURN
            Data[Sales] / __Factor
    )

3 Replies

  • Lotfi96 try this:

     

    Sum = 
    SUMX ( 
        Data, 
        VAR __Factor = IF ( Data[Current] = "USD", 10, 1000 )
        RETURN
            Data[Sales] / __Factor
    )
  • Create a measure using if statement,

    Sum = if(values(Data[Currency] <> "USD", Calculate(sum(data[sales])/1000), calculate(sum(data[sales])/10))

     

    This easure can be wrong but it can give an idea on how to proceed.

     

    Or, SWITCH statement can also be used.