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

Don't miss out! 2025 Microsoft Fabric Community Conference, March 31 - April 2, Las Vegas, Nevada. Use code MSCUST for a $150 discount. Prices go up February 11th. Register now.

Reply
Lotfi96
Regular Visitor

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. 

 

1 ACCEPTED SOLUTION
parry2k
Super User
Super User

@Lotfi96 try this:

 

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


Subscribe to the @PowerBIHowTo YT channel for an upcoming video on List and Record functions in Power Query!!

Learn Power BI and Fabric - subscribe to our YT channel - Click here: @PowerBIHowTo

If my solution proved useful, I'd be delighted to receive Kudos. When you put effort into asking a question, it's equally thoughtful to acknowledge and give Kudos to the individual who helped you solve the problem. It's a small gesture that shows appreciation and encouragement! ❤


Did I answer your question? Mark my post as a solution. Proud to be a Super User! Appreciate your Kudos 🙂
Feel free to email me with any of your BI needs.

View solution in original post

3 REPLIES 3
parry2k
Super User
Super User

@Lotfi96 try this:

 

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


Subscribe to the @PowerBIHowTo YT channel for an upcoming video on List and Record functions in Power Query!!

Learn Power BI and Fabric - subscribe to our YT channel - Click here: @PowerBIHowTo

If my solution proved useful, I'd be delighted to receive Kudos. When you put effort into asking a question, it's equally thoughtful to acknowledge and give Kudos to the individual who helped you solve the problem. It's a small gesture that shows appreciation and encouragement! ❤


Did I answer your question? Mark my post as a solution. Proud to be a Super User! Appreciate your Kudos 🙂
Feel free to email me with any of your BI needs.

Thank you, it worked

ChiragGarg2512
Super User
Super User

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.

Helpful resources

Announcements
Las Vegas 2025

Join us at the Microsoft Fabric Community Conference

March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount!

Jan25PBI_Carousel

Power BI Monthly Update - January 2025

Check out the January 2025 Power BI update to learn about new features in Reporting, Modeling, and Data Connectivity.

December 2024

A Year in Review - December 2024

Find out what content was popular in the Fabric community during 2024.