The ultimate Fabric, Power BI, SQL, and AI community-led learning event. Save €200 with code FABCOMM.
Get registeredCompete to become Power BI Data Viz World Champion! First round ends August 18th. Get started.
I have a visual where I have created a slicer to switch between different measures. Some of the measures our percentages, dollars, and just decimal. I tried changing the format, but it won't change. How do I go about changing the format when using measures in a slicer so the format is reflected in the visual? Thanks.
Solved! Go to Solution.
hi @cheid_4838
In the slicer tabe, add a column that indicates the format string. For example
Measure Name | Format String |
Dollar Value | $#,# |
Percentage | 0.00% |
Volume | #,# |
Now, select the measure that switches between different measures. Go to format under the measure contextual tab. Click Dynamic from the dropdown.
Enter SELECTEDVALUE('slicer'[format string]) in the formula bar.
hi @cheid_4838
In the slicer tabe, add a column that indicates the format string. For example
Measure Name | Format String |
Dollar Value | $#,# |
Percentage | 0.00% |
Volume | #,# |
Now, select the measure that switches between different measures. Go to format under the measure contextual tab. Click Dynamic from the dropdown.
Enter SELECTEDVALUE('slicer'[format string]) in the formula bar.
Hi @cheid_4838
To dynamically change the format of your values based on the measure selected in your slicer, you can use a combination of SWITCH and a calculated DAX measure. While Power BI does not natively support dynamic format strings for measures in field parameters, you can simulate this by creating a measure for formatting your values.
Example DAX Measure
DAX
Copy code
FormattedMeasure =
VAR SelectedMeasure = SELECTEDVALUE('MeasureSelector'[MeasureName])
RETURN
SWITCH(
TRUE(),
SelectedMeasure = "Percentage Measure", FORMAT([YourPercentageMeasure], "0.00%"),
SelectedMeasure = "Currency Measure", FORMAT([YourCurrencyMeasure], "$#,##0.00"),
SelectedMeasure = "Decimal Measure", FORMAT([YourDecimalMeasure], "0.00"),
BLANK() // Default value if no measure is selected
)
If this post helps, then please consider Accepting it as the solution to help the other members find it more quickly.
I created this measure and entered the FORMAT in the return statement, but I am getting an error message shown below. I even tried it with additional parenthesis and still didn't work. Is FORMAT in the wrong location within the measure?