Bird
Raised Fist0
Power BIbi_tool~5 mins

SELECTEDVALUE and HASONEVALUE in Power BI - Step-by-Step Guide

Choose your learning style10 modes available
Introduction
These two functions help you check if a single value is selected in a filter or slicer. They solve the problem of showing results only when one item is chosen, avoiding confusion when multiple items are selected.
When you want to show a message or calculation only if one product is selected in a slicer.
When your report should display details for a single customer, not a group.
When you want to avoid errors caused by multiple selections in a filter.
When you want to create dynamic titles that change based on one selected category.
When you want to check if a user selected exactly one region before showing sales data.
Steps
Step 1: Open the Power BI Desktop
- Report view
You see your report canvas and fields pane
Step 2: Click New measure
- Modeling tab
A formula bar appears to write a DAX measure
Step 3: Type the measure using SELECTEDVALUE
- Formula bar
Measure calculates the selected value or returns a default
💡 Use syntax: SELECTEDVALUE(ColumnName, "Default Text")
Step 4: Create another measure using HASONEVALUE
- Formula bar
Measure returns TRUE if exactly one value is selected, otherwise FALSE
💡 Use syntax: HASONEVALUE(ColumnName)
Step 5: Add a card visual to the report
- Visualizations pane
A blank card appears on the canvas
Step 6: Drag the SELECTEDVALUE measure to the card
- Fields pane to card visual
Card shows the selected value or default text
Step 7: Add a slicer with the same column
- Visualizations pane → Slicer
You can select one or multiple values to test the measures
Before vs After
Before
Slicer allows selecting multiple products; card shows default text 'Multiple or no selection'
After
Slicer has one product selected; card shows that product name
Settings Reference
New measure
📍 Modeling tab
Create custom calculations using DAX
Default: Empty
Slicer
📍 Visualizations pane
Filter report data by selecting values
Default: Multi-select enabled
Common Mistakes
Using SELECTEDVALUE without a default value
If multiple or no values are selected, the measure returns blank, which can confuse users
Always provide a default value in SELECTEDVALUE to show a clear message
Using HASONEVALUE but not handling FALSE case
The measure returns FALSE when multiple or no values are selected, but if you don't use this result, the report may show wrong info
Use HASONEVALUE inside IF statements to control what to show when selection is not exactly one
Summary
SELECTEDVALUE returns the selected item or a default if none or many are selected.
HASONEVALUE checks if exactly one item is selected and returns TRUE or FALSE.
Use these functions to make reports respond clearly to user selections.

Practice

(1/5)
1. What does the SELECTEDVALUE function do in Power BI?
easy
A. Filters the data to only one selected value
B. Checks if exactly one value is selected
C. Returns all selected values as a list
D. Returns the single selected value or a default if multiple values are selected

Solution

  1. Step 1: Understand the purpose of SELECTEDVALUE

    SELECTEDVALUE returns a single value if only one is selected; otherwise, it returns a default or blank.
  2. Step 2: Compare with other options

    HASONEVALUE checks selection count, not returning the value itself; other options describe different behaviors.
  3. Final Answer:

    Returns the single selected value or a default if multiple values are selected -> Option D
  4. Quick Check:

    SELECTEDVALUE = single value or default [OK]
Hint: SELECTEDVALUE gives one value or default if many selected [OK]
Common Mistakes:
  • Confusing SELECTEDVALUE with HASONEVALUE
  • Thinking SELECTEDVALUE returns all selected values
  • Assuming SELECTEDVALUE filters data
2. Which of the following is the correct syntax for using HASONEVALUE in a DAX measure?
easy
A. HASONEVALUE = ColumnName
B. HASONEVALUE[ColumnName]
C. HASONEVALUE(ColumnName)
D. HASONEVALUE(ColumnName, DefaultValue)

Solution

  1. Step 1: Recall HASONEVALUE syntax

    HASONEVALUE takes a single column as argument to check if exactly one value is selected.
  2. Step 2: Eliminate incorrect syntax

    Options A, C, and D do not follow correct function call syntax or add invalid parameters.
  3. Final Answer:

    HASONEVALUE(ColumnName) -> Option C
  4. Quick Check:

    HASONEVALUE(Column) syntax correct [OK]
Hint: HASONEVALUE takes one column as argument in parentheses [OK]
Common Mistakes:
  • Using equal sign instead of parentheses
  • Adding extra parameters to HASONEVALUE
  • Using square brackets incorrectly
3. Given the following DAX measure:
Selected Product = SELECTEDVALUE('Products'[ProductName], "Multiple")

If the user selects exactly one product named "Chair", what will the measure return?
medium
A. "Chair"
B. "Multiple"
C. Blank
D. Error

Solution

  1. Step 1: Understand SELECTEDVALUE behavior with one selection

    When exactly one value is selected, SELECTEDVALUE returns that value, here "Chair".
  2. Step 2: Consider the default value

    The default "Multiple" is returned only if multiple or no values are selected, which is not the case here.
  3. Final Answer:

    "Chair" -> Option A
  4. Quick Check:

    One value selected = returns that value [OK]
Hint: One selected value returns it, else default [OK]
Common Mistakes:
  • Assuming default value returns even with one selection
  • Confusing blank with default
  • Expecting error on multiple selections
4. You wrote this DAX measure:
IsSingleCategory = IF(HASONEVALUE('Sales'[Category]), SELECTEDVALUE('Sales'[Category]), "Multiple")

But it always returns "Multiple" even when one category is selected. What is the likely problem?
medium
A. The HASONEVALUE function is used incorrectly without a filter context
B. SELECTEDVALUE cannot be used inside IF statements
C. The column name 'Category' is misspelled
D. The measure lacks a default value in SELECTEDVALUE

Solution

  1. Step 1: Analyze HASONEVALUE usage

    HASONEVALUE depends on filter context; if no filter is applied, it returns FALSE even if one value exists.
  2. Step 2: Understand why measure returns "Multiple"

    Without proper filter context, HASONEVALUE returns FALSE, so IF returns "Multiple" always.
  3. Final Answer:

    The HASONEVALUE function is used incorrectly without a filter context -> Option A
  4. Quick Check:

    HASONEVALUE needs filter context to work [OK]
Hint: HASONEVALUE needs filter context to return TRUE [OK]
Common Mistakes:
  • Assuming SELECTEDVALUE can't be inside IF
  • Ignoring filter context importance
  • Not checking column spelling
5. You want to create a measure that shows the selected product name if exactly one product is selected, otherwise shows "Multiple Products". Which DAX expression correctly achieves this?
hard
A. Product Selected = IF(SELECTEDVALUE('Products'[ProductName]), HASONEVALUE('Products'[ProductName]), "Multiple Products")
B. Product Selected = IF(HASONEVALUE('Products'[ProductName]), SELECTEDVALUE('Products'[ProductName]), "Multiple Products")
C. Product Selected = SELECTEDVALUE('Products'[ProductName], HASONEVALUE('Products'[ProductName]))
D. Product Selected = HASONEVALUE('Products'[ProductName]) & SELECTEDVALUE('Products'[ProductName])

Solution

  1. Step 1: Understand the requirement

    Show product name if exactly one selected; else show "Multiple Products".
  2. Step 2: Evaluate each option

    Product Selected = IF(HASONEVALUE('Products'[ProductName]), SELECTEDVALUE('Products'[ProductName]), "Multiple Products") uses HASONEVALUE to check selection count and SELECTEDVALUE to get the name, with fallback text. Others misuse functions or syntax.
  3. Final Answer:

    Product Selected = IF(HASONEVALUE('Products'[ProductName]), SELECTEDVALUE('Products'[ProductName]), "Multiple Products") -> Option B
  4. Quick Check:

    HASONEVALUE + SELECTEDVALUE with IF = correct pattern [OK]
Hint: Use IF with HASONEVALUE and SELECTEDVALUE for conditional display [OK]
Common Mistakes:
  • Passing HASONEVALUE as default to SELECTEDVALUE
  • Using SELECTEDVALUE as condition in IF
  • Concatenating HASONEVALUE and SELECTEDVALUE incorrectly
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard