Contar el número de países que hay seleccionados (y guardar esta información en una variable de nuestra medida) es tan fácil como pasar a la función DISTINCTCOUNT el nombre de la columna:
Recordemos que trabajando con medidas nos encontramos en contexto de filtro, por lo que la columna Geography[Country] llegará (o podría llegar) a nuestra expresión DAX ya filtrada. Si hemos seleccionado un país en la segmentación, esta columna solo tendrá visible un valor, por lo que DISTINCTCOUNT devolverá 1.
Para contar el número total de países deberíamos hacer lo mismo, pero asegurándonos de que estamos contando todos los países. Es decir, tendremos que asegurarnos de que estamos limpiando de filtros aplicados a la tabla Geography:
CALCULATE(
DISTINCTCOUNT(Geography[Country]),
ALL(Geography)
)
Con esto ya podríamos modificar la medida [Sales evolution title]:
VAR __selectedCountry = SELECTEDVALUE(Geography[Country])
VAR __numberSelectedCountries = DISTINCTCOUNT(Geography[Country])
VAR __numberAllCountries =
CALCULATE(
DISTINCTCOUNT(Geography[Country]),
ALL(Geography)
)
RETURN
IF(
__numberSelectedCountries = __numberAllCountries,
"Sales evolution",
"Sales evolution in " & __selectedCountry
)
En el primer bloque definimos las dos variables comentadas (__numberSelectedCountries y __numberAllCountries, además de la que ya existía que devuelve el país seleccionado, __selectedCountry) y en el bloque RETURN comprobamos si el número de países seleccionado coincide con el número total de países:
__numberSelectedCountries = __numberAllCountries,
Si se cumple la condición (si tenemos todos los países visibles), devolvemos el texto genérico:
En caso contrario, devolvemos el texto que muestra el país concreto seleccionado: