ALLALL

Returnerar alla rader i en tabell, eller alla värden i en kolumn, och ignorerar eventuella filter som har tillämpats.Returns all the rows in a table, or all the values in a column, ignoring any filters that might have been applied. Den här funktionen är användbar när man rensar filter och skapar beräkningar på alla rader i en tabell.This function is useful for clearing filters and creating calculations on all the rows in a table.

SyntaxSyntax

ALL( [<table> | <column>[, <column>[, <column>[,…]]]] )  

ParametrarParameters

TermTerm DefinitionDefinition
tabelltable Tabellen som du vill rensa filter i.The table that you want to clear filters on.
kolumncolumn Kolumnen som du vill rensa filter i.The column that you want to clear filters on.

Argumentet för ALL-funktionen måste antingen vara en referens till en bastabell eller en referens till en baskolumn.The argument to the ALL function must be either a reference to a base table or a reference to a base column. Du kan inte använda tabelluttryck eller kolumnuttryck med ALL-funktionen.You cannot use table expressions or column expressions with the ALL function.

ReturvärdeReturn value

Tabellen eller kolumnen där filter har tagits bort.The table or column with filters removed.

KommentarerRemarks

  • Den här funktionen används inte ensam, utan fungerar som en mellanliggande funktion som kan användas för att ändra den uppsättning resultat som en annan beräkning utför.This function is not used by itself, but serves as an intermediate function that can be used to change the set of results over which some other calculation is performed.

  • Det normala beteendet för DAX-instruktioner som innehåller funktionen ALL() är att alla filter som tillämpas ignoreras.The normal behavior for DAX expressions containing the ALL() function is that any filters applied will be ignored. Det finns dock vissa scenarier där detta inte är fallet på grund av auto-exist, en DAX-teknik som optimerar filtreringen för att minska den mängd bearbetning som krävs för vissa DAX-frågor.However, there are some scenarios where this is not the case because of auto-exist, a DAX technology that optimizes filtering in order to reduce the amount of processing required for certain DAX queries. Ett exempel där auto-exist och ALL() ger oväntat resultat är när det sker filtrering på två eller fler kolumner i samma tabell (till exempel vid användning av utsnitt) och det finns ett mått i samma tabell som använder ALL().An example where auto-exist and ALL() provide unexpected results is when filtering on two or more columns of the same table (like when using slicers), and there is a measure on that same table that uses ALL(). I det här fallet sammanfogar auto-exist flera filter till ett och samma, och filtrerar endast på befintliga kombinationer av värden.In this case, auto-exist will merge the multiple filters into one and will only filter on existing combinations of values. På grund av den här sammanfogningen beräknas måttet utifrån de befintliga kombinationerna av värden, och resultatet baseras på filtrerade värden i stället för alla värden, som annars förväntas.Because of this merge, the measure will be calculated on the existing combinations of values and the result will be based on filtered values instead of all values as expected. Om du vill veta mer om auto-exist och hur det påverkar beräkningar kan du läsa Microsoft MVP: Alberto Ferraris artikel Understanding DAX Auto-Exist (Förstå DAX Auto-Exist) på sql.bi.com.To learn more about auto-exist and its effect on calculations, see Microsoft MVP Alberto Ferrari's Understanding DAX Auto-Exist article on sql.bi.com.

  • I följande tabell beskrivs hur du kan använda funktionerna ALL och ALLEXCEPT i olika scenarier.The following table describes how you can use the ALL and ALLEXCEPT functions in different scenarios.

    Funktion och användningFunction and usage BeskrivningDescription
    ALL()ALL() Tar bort alla filter överallt.Removes all filters everywhere. ALL() kan bara användas för att rensa filter, inte för att returnera en tabell.ALL() can only be used to clear filters but not to return a table.
    ALL(Table)ALL(Table) Tar bort alla filter från den angivna tabellen.Removes all filters from the specified table. I praktiken returnerar ALL(Table) alla värden i tabellen och tar bort alla filter från kontexten som annars skulle ha tillämpats.In effect, ALL(Table) returns all of the values in the table, removing any filters from the context that otherwise might have been applied. Den här funktionen är användbar när du arbetar med många grupperingsnivåer och vill skapa en beräkning för ett förhållande mellan ett aggregerat värde och det totala värdet.This function is useful when you are working with many levels of grouping, and want to create a calculation that creates a ratio of an aggregated value to the total value. Det första exemplet demonstrerar det här scenariot.The first example demonstrates this scenario.
    ALL (Column[, Column[, …]])ALL (Column[, Column[, …]]) Tar bort alla filter från angivna kolumner i tabellen. Alla andra filter för andra kolumner i tabellen tillämpas fortfarande.Removes all filters from the specified columns in the table; all other filters on other columns in the table still apply. Alla kolumnargument måste komma från samma tabell.All column arguments must come from the same table. Varianten ALL(Column) är användbar när du vill ta bort kontextfilter för en eller flera angivna kolumner och behålla alla andra kontextfilter.The ALL(Column) variant is useful when you want to remove the context filters for one or more specific columns and to keep all other context filters. Det andra och tredje exemplet demonstrerar det här scenariot.The second and third examples demonstrate this scenario.
    ALLEXCEPT(Table, Column1 [,Column2]...)ALLEXCEPT(Table, Column1 [,Column2]...) Tar bort alla kontextfilter i tabellen, förutom filter som tillämpas på de angivna kolumnerna.Removes all context filters in the table except filters that are applied to the specified columns. Det här är en praktisk genväg i situationer där du vill ta bort filtren för många, men inte alla, kolumner i en tabell.This is a convenient shortcut for situations in which you want to remove the filters on many, but not all, columns in a table.
  • Den här funktionen kan inte användas i DirectQuery-läge när den används i beräknade kolumner eller regler för säkerhet på radnivå (RLS).This function is not supported for use in DirectQuery mode when used in calculated columns or row-level security (RLS) rules.

Exempel 1Example 1

Beräkna förhållandet mellan kategoriförsäljning och total försäljningCalculate ratio of Category Sales to Total Sales

Anta att du vill ta reda på försäljningsbeloppet för den aktuella cellen i din pivottabell, dividerat med den totala försäljningen för alla återförsäljare.Assume that you want to find the amount of sales for the current cell, in your PivotTable, divided by the total sales for all resellers. För att nämnaren ska vara densamma oavsett hur pivottabellens användare filtrerar eller grupperar data, definierar du en formel som använder ALL för att skapa rätt totalsumma.To ensure that the denominator is the same regardless of how the PivotTable user might be filtering or grouping the data, you define a formula that uses ALL to create the correct grand total.

Följande tabell visar resultatet när det nya måttet All Reseller Sales Ratio skapas med hjälp av formeln i kodavsnittet.The following table shows the results when a new measure, All Reseller Sales Ratio, is created using the formula shown in the code section. Du kan se hur det fungerar genom att lägga till fältet CalendarYear i området Radetiketter i pivottabellen och sedan lägga till fältet ProductCategoryName i området Kolumnetiketter.To see how this works, add the field, CalendarYear, to the Row Labels area of the PivotTable, and add the field, ProductCategoryName, to the Column Labels area. Dra sedan måttet All Reseller Sales Ratio till området Värden i pivottabellen.Then, drag the measure, All Reseller Sales Ratio, to the Values area of the Pivot Table. Om du vill se resultatet som procentandelar använder du formateringsfunktionerna i Excel och tillämpar en procentformatering på cellerna som innehåller måttet.To view the results as percentages, use the formatting features of Excel to apply a percentage number formatting to the cells that contains the measure.

All Reseller SalesAll Reseller Sales KolumnetiketterColumn Labels
RadetiketterRow Labels TillbehörAccessories CyklarBikes ClothingClothing KomponenterComponents TotalsummaGrand Total
20052005 0,02 %0.02% 9,10 %9.10% 0,04 %0.04% 0,75 %0.75% 9,91 %9.91%
20062006 0,11 %0.11% 24,71 %24.71% 0,60 %0.60% 4,48 %4.48% 29,90 %29.90%
20072007 0,36 %0.36% 31,71 %31.71% 1,07 %1.07% 6,79 %6.79% 39,93 %39.93%
20082008 0,20 %0.20% 16,95 %16.95% 0,48 %0.48% 2,63 %2.63% 20,26 %20.26%
TotalsummaGrand Total 0,70 %0.70% 82,47 %82.47% 2,18 %2.18% 14,65 %14.65% 100,00 %100.00%

FormelFormula

= SUMX(ResellerSales_USD, ResellerSales_USD[SalesAmount_USD])/SUMX(ALL(ResellerSales_USD), ResellerSales_USD[SalesAmount_USD])  

Formeln är konstruerad enligt följande:The formula is constructed as follows:

  1. Täljaren SUMX(ResellerSales_USD, ResellerSales_USD[SalesAmount_USD]) är summan av värdena i ResellerSales_USD[SalesAmount_USD] för den aktuella cellen i pivottabellen, där kontextfilter har tillämpats på CalendarYear och ProductCategoryName.The numerator, SUMX(ResellerSales_USD, ResellerSales_USD[SalesAmount_USD]), is the sum of the values in ResellerSales_USD[SalesAmount_USD] for the current cell in the PivotTable, with context filters applied on CalendarYear and ProductCategoryName.

  2. För nämnaren börjar du med att ange en tabell, ResellerSales_USD. Använd sedan ALL-funktionen till att ta bort alla kontextfilter i tabellen.For the denominator, you start by specifying a table, ResellerSales_USD, and use the ALL function to remove all context filters on the table.

  3. Sedan använder du SUMX-funktionen till att summera värdena i kolumnen ResellerSales_USD[SalesAmount_USD].You then use the SUMX function to sum the values in the ResellerSales_USD[SalesAmount_USD] column. Med andra ord får du summan av ResellerSales_USD[SalesAmount_USD] för alla återförsäljares försäljning.In other words, you get the sum of ResellerSales_USD[SalesAmount_USD] for all resellers sales.

Exempel 2Example 2

Beräkna förhållandet mellan produktförsäljning och total försäljning under innevarande årCalculate Ratio of Product Sales to Total Sales Through Current Year

Anta att du vill skapa en tabell som visar procentandelen av försäljningen jämfört med åren för varje produktkategori (ProductCategoryName).Assume that you want to create a table showing the percentage of sales compared over the years for each product category (ProductCategoryName). Om du vill ta reda på procentandelen för varje år och varje värde i ProductCategoryName, måste du dividera försäljningssumman för det året och produktkategorin med försäljningssumman för samma produktkategori och alla år.To obtain the percentage for each year over each value of ProductCategoryName, you need to divide the sum of sales for that particular year and product category by the sum of sales for the same product category over all years. Med andra ord vill du behålla filtret i ProductCategoryName, men ta bort filtret på året när du beräknar nämnaren i procentandelen.In other words, you want to keep the filter on ProductCategoryName but remove the filter on the year when calculating the denominator of the percentage.

Följande tabell visar resultatet när det nya måttet, Reseller Sales Year, skapas med hjälp av formeln i kodavsnittet.The following table shows the results when a new measure, Reseller Sales Year, is created using the formula shown in the code section. Du kan se hur det fungerar genom att lägga till fältet CalendarYear i området Radetiketter i pivottabellen och sedan lägga till fältet ProductCategoryName i området Kolumnetiketter.To see how this works, add the field, CalendarYear, to the Row Labels area of the PivotTable, and add the field, ProductCategoryName, to the Column Labels area. Om du vill se resultatet som procentandelar använder du formateringsfunktionerna i Excel och tillämpar en procentformatering på cellerna som innehåller måttet Reseller Sales Year.To view the results as percentages, use Excel's formatting features to apply a percentage number format to the cells containing the measure, Reseller Sales Year.

Reseller Sales YearReseller Sales Year KolumnetiketterColumn Labels
RadetiketterRow Labels TillbehörAccessories CyklarBikes ClothingClothing KomponenterComponents TotalsummaGrand Total
20052005 3,48 %3.48% 11,03 %11.03% 1,91 %1.91% 5,12 %5.12% 9,91 %9.91%
20062006 16,21 %16.21% 29,96 %29.96% 27,29 %27.29% 30,59 %30.59% 29,90 %29.90%
20072007 51,62 %51.62% 38,45 %38.45% 48,86 %48.86% 46,36 %46.36% 39,93 %39.93%
20082008 28,69 %28.69% 20,56 %20.56% 21,95 %21.95% 17,92 %17.92% 20,26 %20.26%
TotalsummaGrand Total 100,00 %100.00% 100,00 %100.00% 100,00 %100.00% 100,00 %100.00% 100,00 %100.00%

FormelFormula

= SUMX(ResellerSales_USD, ResellerSales_USD[SalesAmount_USD])/CALCULATE( SUM( ResellerSales_USD[SalesAmount_USD]), ALL(DateTime[CalendarYear]))  

Formeln är konstruerad enligt följande:The formula is constructed as follows:

  1. Täljaren, SUMX(ResellerSales_USD, ResellerSales_USD[SalesAmount_USD]), är summan av värdena i ResellerSales_USD[SalesAmount_USD] för den aktuella cellen i pivottabellen, där kontextfilter har tillämpats på kolumnerna CalendarYear och ProductCategoryName.The numerator, SUMX(ResellerSales_USD, ResellerSales_USD[SalesAmount_USD]), is the sum of the values in ResellerSales_USD[SalesAmount_USD] for the current cell in the pivot table, with context filters applied on the columns CalendarYear and ProductCategoryName.

  2. För nämnaren tar du bort det befintliga filtret på CalendarYear med hjälp av funktionen ALL(Column).For the denominator, you remove the existing filter on CalendarYear by using the ALL(Column) function. Detta beräknar summan för de återstående raderna i tabellen ResellerSales_USD, efter att befintliga kontextfilter har tillämpats från kolumnetiketterna.This calculates the sum over the remaining rows on the ResellerSales_USD table, after applying the existing context filters from the column labels. Nettoeffekten blir att för nämnaren beräknas summan för valt ProductCategoryName (det underförstådda kontextfiltret) och för alla värden i år.The net effect is that for the denominator the sum is calculated over the selected ProductCategoryName (the implied context filter) and for all values in Year.

Exempel 3Example 3

Beräkna bidrag för produktkategorier till total försäljning per årCalculate Contribution of Product Categories to Total Sales Per Year

Anta att du vill skapa en tabell som visar procentandelen försäljning för varje produktkategori per år.Assume that you want to create a table that shows the percentage of sales for each product category, on a year-by-year basis. Om du vill se procentandelen för varje produktkategori under ett visst år, måste du beräkna försäljningssumman för den specifika produktkategorin (ProductCategoryName) under år n och sedan dividera resultatet med försäljningssumman för år n i alla produktkategorier.To obtain the percentage for each product category in a particular year, you need to calculate the sum of sales for that particular product category (ProductCategoryName) in year n, and then divide the resulting value by the sum of sales for the year n over all product categories. Med andra ord vill du behålla filtret för året, men ta bort filtret för ProductCategoryName när du beräknar nämnaren i procentandelen.In other words, you want to keep the filter on year but remove the filter on ProductCategoryName when calculating the denominator of the percentage.

Följande tabell visar resultatet när det nya måttet, Reseller Sales CategoryName, skapas med hjälp av formeln i kodavsnittet.The following table shows the results when a new measure, Reseller Sales CategoryName, is created using the formula shown in the code section. Du kan se hur det fungerar genom att lägga till fältet CalendarYear i området Radetiketter i pivottabellen och lägga till fältet ProductCategoryName i området Kolumnetiketter.To see how this works, add the field, CalendarYear to the Row Labels area of the PivotTable, and add the field, ProductCategoryName, to the Column Labels area. Lägg sedan till det nya måttet i området Värden i pivottabellen.Then add the new measure to the Values area of the PivotTable. Om du vill se resultatet som procentandelar använder du formateringsfunktionerna i Excel och tillämpar en procentformatering på cellerna som innehåller det nya måttet Reseller Sales CategoryName.To view the results as percentages, use Excel's formatting features to apply a percentage number format to the cells that contain the new measure, Reseller Sales CategoryName.

Reseller Sales CategoryNameReseller Sales CategoryName KolumnetiketterColumn Labels
RadetiketterRow Labels TillbehörAccessories CyklarBikes ClothingClothing KomponenterComponents TotalsummaGrand Total
20052005 0,25 %0.25% 91,76 %91.76% 0,42 %0.42% 7,57 %7.57% 100,00 %100.00%
20062006 0,38 %0.38% 82,64 %82.64% 1,99 %1.99% 14,99 %14.99% 100,00 %100.00%
20072007 0,90 %0.90% 79,42 %79.42% 2,67 %2.67% 17,01 %17.01% 100,00 %100.00%
20082008 0,99 %0.99% 83,69 %83.69% 2,37 %2.37% 12,96 %12.96% 100,00 %100.00%
TotalsummaGrand Total 0,70 %0.70% 82,47 %82.47% 2,18 %2.18% 14,65 %14.65% 100,00 %100.00%

FormelFormula

= SUMX(ResellerSales_USD, ResellerSales_USD[SalesAmount_USD])/CALCULATE( SUM( ResellerSales_USD[SalesAmount_USD]), ALL(ProductCategory[ProductCategoryName]))  

Formeln är konstruerad enligt följande:The formula is constructed as follows:

  1. Täljaren SUMX(ResellerSales_USD, ResellerSales_USD[SalesAmount_USD]) är summan av värdena i ResellerSales_USD[SalesAmount_USD] för den aktuella cellen i pivottabellen, där kontextfilter har tillämpats på fälten CalendarYear och ProductCategoryName.The numerator, SUMX(ResellerSales_USD, ResellerSales_USD[SalesAmount_USD]), is the sum of the values in ResellerSales_USD[SalesAmount_USD] for the current cell in the PivotTable, with context filters applied on the fields, CalendarYear and ProductCategoryName.

  2. För nämnaren använder du funktionen ALL(Column) för att ta bort filtret på ProductCategoryName och beräkna summan över de återstående raderna i ResellerSales_USD-tabellen, efter att ha tillämpat de befintliga kontextfiltren från radetiketterna.For the denominator, you use the function, ALL(Column), to remove the filter on ProductCategoryName and calculate the sum over the remaining rows on the ResellerSales_USD table, after applying the existing context filters from the row labels. Nettoeffekten blir att för nämnaren beräknas summan för valt år (det underförstådda kontextfiltret) och för alla värden i ProductCategoryName.The net effect is that, for the denominator, the sum is calculated over the selected Year (the implied context filter) and for all values of ProductCategoryName.

Se ävenSee also

Filtrera funktionerFilter functions
Funktionen ALLALL function
Funktionen ALLEXCEPTALLEXCEPT function
Funktionen FILTERFILTER function