Showing results for 
Search instead for 
Did you mean: 
Helper I
Helper I

Switch Table Custom Format failing to sort data correctly

When I use a custom format on my data, the data gets sorted based on the first number as shown below.




This is the code I am using, I have tried with max instead of values and without stating that it can't be 0.


Also have used the "Currency" option, however this put all the negative numbers at the top of the list as they where in ().

Sales = if(HASONEVALUE('Table'[Table]),
Values('Table'[Table]) =
"Revenue" && [Rev LW]<>0, FORMAT ([Rev LW], "$#,###"),
Values('Table'[Rev/Units]) =
"Units" && [Units LW]<>0, FORMAT([Units LW], "0")),
[Units LW])
Can anyone give me any ideas on how best to tackle this,
Thank you
Super User
Super User

Hi @StuBee 


It's a bad idea, indeed, to format a numeric measure with FORMAT and return a string (unless you need to incorporate such a value into some kind of text but even then you create a version of the measure). Such "values" will always be sorted as strings, not numbers. That's one thing. A measure should always return the raw value (always of the same type). Mixing floats with integers is a NO-NO. Measures should be consistent. Otherwise you'll be facing issues. And, as we see, you do. Formatting a measure should be done in the UI option in the ribbon. So, if you have a measure that wants to return different types of info, you're most likely doing it wrong. You should rethink the design.

Ahh ok, so is there no good way to use a switch function to return a whole number and switch to currency?


That's fine, they can see it is revenue from the box they click can't they.


Thanks, you confirmed what I was hoping wasn't the case.



Helpful resources

May 2023 update

Power BI May 2023 Update

Find out more about the May 2023 update.

Submit your Data Story

Data Stories Gallery

Share your Data Story with the Community in the Data Stories Gallery.

Top Solution Authors
Top Kudoed Authors