Compartir a través de


ALLEXCEPT

Se aplica a:columna Calculadatabla calculadaMedidacálculo visual

Quita todos los filtros de contexto de la tabla, excepto los filtros que se han aplicado a las columnas especificadas.

Sintaxis

ALLEXCEPT(<table>,<column>[,<column>[,…]])

Parámetros

Término Definición
table Tabla sobre la que se quitan todos los filtros de contexto, excepto los filtros de las columnas especificadas en argumentos posteriores.
column Columna para la que se deben conservar los filtros de contexto.

El primer argumento de la función ALLEXCEPT debe ser una referencia a una tabla base. Todos los argumentos posteriores deben ser referencias a columnas base. No se pueden usar expresiones de tabla ni expresiones de columna con la función ALLEXCEPT.

Valor devuelto

Tabla con todos los filtros quitados excepto los filtros de las columnas especificadas.

Observaciones

  • Esta función no se usa por sí misma, pero actúa como una función intermedia que se puede usar para cambiar el conjunto de resultados en el que se realiza algún otro cálculo.

  • ALL y ALLEXCEPT se pueden usar en diferentes escenarios:

    Función y uso Descripción
    ALL(tabla) Quita todos los filtros de la tabla especificada. En efecto, ALL(Tabla) devuelve todos los valores de la tabla, quitando los filtros del contexto que, de lo contrario, podrían haberse aplicado. Esta función es útil cuando se trabaja con muchos niveles de agrupación y se desea crear un cálculo que cree una relación de un valor agregado con el valor total.
    ALL (Columna[, Columna[, ...]]) Quita todos los filtros de las columnas especificadas de la tabla; Todos los demás filtros de otras columnas de la tabla se siguen aplicando. Todos los argumentos de columna deben proceder de la misma tabla. La variante de ALL(columna) es útil cuando desea quitar los filtros de contexto de una o más columnas específicas y mantener todos los demás filtros de contexto.
    ALLEXCEPT(Tabla, Columna1 [,Columna2]...) Quita todos los filtros de contexto de la tabla, excepto los filtros que se aplican a las columnas especificadas. Este es un acceso directo práctico para situaciones en las que desea quitar los filtros en muchas columnas de una tabla, pero no todas.
  • Esta función no se admite para su uso en el modo DirectQuery cuando se usa en columnas calculadas o reglas de seguridad de nivel de fila (RLS).

Ejemplo

La fórmula de medida siguiente suma SalesAmount_USD y usa la función ALLEXCEPT para quitar los filtros de contexto de la tabla DateTime, excepto si el filtro se ha aplicado a la columna CalendarYear.

= CALCULATE(SUM(ResellerSales_USD[SalesAmount_USD]), ALLEXCEPT(DateTime, DateTime[CalendarYear]))

Dado que la fórmula usa ALLEXCEPT, siempre que se use cualquier columna, pero CalendarYear de la tabla DateTime se usa para segmentar una visualización, la fórmula quitará los filtros de segmentación, lo que proporcionará un valor igual a la suma de SalesAmount_USD. Sin embargo, si la columna CalendarYear se usa para segmentar la visualización, los resultados son diferentes. Dado que CalendarYear se especifica como el argumento para ALLEXCEPT, cuando los datos se segmentan en el año, se aplicará un filtro en años en el nivel de fila.

Funciones de filtroALL funciónFILTER