Next there seems to be an issue with your VirtualRangeSelect table. The values do not correspond to the Range Names and the range from 40% ~ 50% is missing…
I lined up the values according to the Range names and created these measures.
No of Weeks =
CALCULATE( DISTINCTCOUNT( 'Calendar'[Week Start Date] ),
FILTER(
VALUES( 'Calendar'[Week Start Date] ),
COUNTROWS(
FILTER( VirtualRangeSelect,
[% Students Virtual Only] >= VirtualRangeSelect[MinValueRange] &&
[% Students Virtual Only] < VirtualRangeSelect[MaxValueRange]
)
) > 0
)
)
.
Invoice Case total =
CALCULATE(
SUM( OBIQuery[Invoice Cases] ),
FILTER(
VALUES( 'Calendar'[Week Start Date] ),
COUNTROWS(
FILTER( VirtualRangeSelect,
[% Students Virtual Only] >= VirtualRangeSelect[MinValueRange] &&
[% Students Virtual Only] < VirtualRangeSelect[MaxValueRange]
)
) > 0
)
)
.
with this result (that matches the filtered table next to it)