Join us at FabCon Atlanta from March 16 - 20, 2026, for the ultimate Fabric, Power BI, AI and SQL community-led event. Save $200 with code FABCOMM.
Register now!The Power BI Data Visualization World Championships is back! Get ahead of the game and start preparing now! Learn more
Good afternoon!
I have a measure which calculates sales MTD, QTD or YTD and depends on slicer SalesDateSlicer value:
MyMeasure :=
var Result =
SWITCH
(
SELECTEDVALUE(SalesDateSlicer[Period]),
"MTD", CALCULATE(SUM('Sales'[Sales]),
FILTER(ALL('Sales'),
DATESMTD('Sales'[Date]))
),
"QTD", CALCULATE(SUM('Sales'[Sales]),
FILTER(ALL('Sales'),
DATESQTD('Sales'[Date]))
),
"YTD", CALCULATE(SUM('Sales'[Sales]),
FILTER(ALL('Sales'),
DATESYTD('Sales'[Date]))
)
)
RETURN Result However, when I try to use my measure in a matrix it fails with error "A table of multiple values was supplied where a single value was expected". How to fix that?
Hi @darkmetrics
Please try
MyMeasure :=
VAR Result =
SWITCH (
SELECTEDVALUE ( SalesDateSlicer[Period] ),
"MTD",
CALCULATE (
SUM ( 'Sales'[Sales] ),
DATESMTD ( 'Sales'[Date] ),
ALL ( 'Sales' )
),
"QTD",
CALCULATE (
SUM ( 'Sales'[Sales] ),
DATESQTD ( 'Sales'[Date] ),
ALL ( 'Sales' )
),
"YTD",
CALCULATE (
SUM ( 'Sales'[Sales] ),
DATESYTD ( 'Sales'[Date] ),
ALL ( 'Sales' )
)
)
RETURN
Result
However, this is not guaranteed to work as time intelligence functions require standard date table with homogeneous date column. It is always a good idea to use a dimension date table.
The Power BI Data Visualization World Championships is back! Get ahead of the game and start preparing now!
Check out the November 2025 Power BI update to learn about new features.
| User | Count |
|---|---|
| 20 | |
| 11 | |
| 10 | |
| 4 | |
| 4 |
| User | Count |
|---|---|
| 34 | |
| 31 | |
| 19 | |
| 12 | |
| 11 |