Applies ToExcel voor Microsoft 365 Excel 2024 Excel 2021 Excel 2019 Excel 2016 Power BI

Deze sectie bevat koppelingen naar voorbeelden die het gebruik van DAX-formules in de volgende scenario's demonstreren.

  • Complexe berekeningen uitvoeren

  • Werken met tekst en datums

  • Voorwaardelijke waarden en testen op fouten

  • Time Intelligence gebruiken

  • Waarden rangschikken en vergelijken

In dit artikel

Aan de slag

Ga naar de DAX Resource Center-wiki waar u allerlei informatie over DAX kunt vinden, waaronder blogs, voorbeelden, whitepapers en video's van toonaangevende professionals en Microsoft.

Scenario's: complexe berekeningen uitvoeren

DAX-formules kunnen complexe berekeningen uitvoeren die aangepaste aggregaties, filters en het gebruik van voorwaardelijke waarden omvatten. In deze sectie vindt u voorbeelden van hoe u aan de slag gaat met aangepaste berekeningen.

Aangepaste berekeningen maken voor een draaitabel

CALCULATE en CALCULATETABLE zijn krachtige, flexibele functies die handig zijn voor het definiëren van berekende velden. Met deze functies kunt u de context wijzigen waarin de berekening wordt uitgevoerd. U kunt ook het type aggregatie of wiskundige bewerking aanpassen dat moet worden uitgevoerd. Zie de volgende onderwerpen voor voorbeelden.

Een filter toepassen op een formule

Op de meeste plaatsen waar een DAX-functie een tabel als argument gebruikt, kunt u in plaats daarvan een gefilterde tabel doorgeven, ofwel met behulp van de functie FILTER in plaats van de tabelnaam, of door een filterexpressie op te geven als een van de functieargumenten. De volgende onderwerpen bevatten voorbeelden van het maken van filters en hoe filters de resultaten van formules beïnvloeden. Zie Gegevens filteren in DAX-formules voor meer informatie.

Met de functie FILTER kunt u filtercriteria opgeven met behulp van een expressie, terwijl de andere functies specifiek zijn ontworpen om lege waarden uit te filteren.

Filters selectief verwijderen om een dynamische verhouding te maken

Door dynamische filters in formules te maken, kunt u eenvoudig vragen als de volgende beantwoorden:

  • Wat was de bijdrage van de verkoop van het huidige product aan de totale verkoop voor het jaar?

  • Hoeveel heeft deze divisie bijgedragen aan de totale winst voor alle bedrijfsjaren, vergeleken met andere divisies?

Formules die u in een draaitabel gebruikt, kunnen worden beïnvloed door de draaitabelcontext, maar u kunt de context selectief wijzigen door filters toe te voegen of te verwijderen. In het voorbeeld in het onderwerp ALL ziet u hoe u dit doet. Als u de verkoopverhouding voor een specifieke reseller wilt vinden ten opzichte van de verkoop voor alle resellers, maakt u een meting waarmee de waarde voor de huidige context wordt berekend gedeeld door de waarde voor de ALL-context.

Het onderwerp ALLEXCEPT bevat een voorbeeld van het selectief wissen van filters op een formule. In beide voorbeelden wordt uitgelegd hoe de resultaten veranderen, afhankelijk van het ontwerp van de draaitabel.

Zie de volgende onderwerpen voor andere voorbeelden van het berekenen van verhoudingen en percentages:

Een waarde uit een buitenste lus gebruiken

Naast het gebruik van waarden uit de huidige context in berekeningen, kan DAX een waarde uit een vorige lus gebruiken bij het maken van een set gerelateerde berekeningen. In het volgende onderwerp vindt u een overzicht van het bouwen van een formule die verwijst naar een waarde uit een buitenste lus. De functie EARLIER ondersteunt maximaal twee niveaus van geneste lussen.

Zie Context in DAX Formulas voor meer informatie over rijcontext en gerelateerde tabellen en het gebruik van dit concept in formules.

Scenario's: werken met tekst en datums

Deze sectie bevat koppelingen naar DAX-referentieonderwerpen die voorbeelden bevatten van veelvoorkomende scenario's met betrekking tot het werken met tekst, het extraheren en opstellen van datum- en tijdwaarden of het maken van waarden op basis van een voorwaarde.

Een sleutelkolom maken door samenvoeging

Power Pivot staat geen samengestelde sleutels toe; Als u samengestelde sleutels in uw gegevensbron hebt, moet u deze mogelijk combineren in één sleutelkolom. Het volgende onderwerp bevat een voorbeeld van het maken van een berekende kolom op basis van een samengestelde sleutel.

Een datum opstellen op basis van datumonderdelen die zijn geëxtraheerd uit een tekstdatum

Power Pivot gebruikt een datum/tijd-gegevenstype van SQL Server om met datums te werken; Als uw externe gegevens datums bevatten die anders zijn opgemaakt, bijvoorbeeld als uw datums zijn geschreven in een regionale datumnotatie die niet wordt herkend door de Power Pivot gegevensengine, of als uw gegevens surrogaatsleutels gebruiken, moet u mogelijk een DAX-formule gebruiken om de datumonderdelen te extraheren en de onderdelen vervolgens op te stellen in een geldige datum/tijd-weergave.

Als u bijvoorbeeld een kolom met datums hebt die is weergegeven als een geheel getal en vervolgens is geïmporteerd als een tekenreeks, kunt u de tekenreeks converteren naar een datum/tijd-waarde met behulp van de volgende formule:

=DATUM(RECHTS([Waarde1],4),LINKS([Waarde1],2),MID([Waarde1];2))

waarde1

Resultaat

01032009

1/3/2009

12132008

12/13/2008

06252007

6/25/2007

De volgende onderwerpen bevatten meer informatie over de functies die worden gebruikt voor het extraheren en opstellen van datums.

Een aangepaste datum- of getalnotatie definiëren

Als uw gegevens datums of getallen bevatten die niet worden weergegeven in een van de standaardtekstindelingen van Windows, kunt u een aangepaste notatie definiëren om ervoor te zorgen dat de waarden correct worden verwerkt. Deze indelingen worden gebruikt bij het converteren van waarden naar tekenreeksen of van tekenreeksen. De volgende onderwerpen bieden ook een gedetailleerde lijst met de vooraf gedefinieerde indelingen die beschikbaar zijn voor het werken met datums en getallen.

Gegevenstypen wijzigen met behulp van een formule

In Power Pivot wordt het gegevenstype van de uitvoer bepaald door de bronkolommen en kunt u het gegevenstype van het resultaat niet expliciet opgeven, omdat het optimale gegevenstype wordt bepaald door Power Pivot. U kunt echter de impliciete gegevenstypeconversies die door Power Pivot worden uitgevoerd, gebruiken om het uitvoergegevenstype te bewerken. 

  • Als u een datum of een numerieke tekenreeks wilt converteren naar een getal, vermenigvuldigt u met 1,0. Met de volgende formule wordt bijvoorbeeld de huidige datum min 3 dagen berekend en wordt vervolgens de bijbehorende waarde voor het gehele getal uitgevoerd.

    =(VANDAAG()-3)*1.0

  • Als u een datum, getal of valutawaarde wilt converteren naar een tekenreeks, voegt u de waarde samen met een lege tekenreeks. De volgende formule retourneert bijvoorbeeld de datum van vandaag als een tekenreeks.

    =""& VANDAAG()

De volgende functies kunnen ook worden gebruikt om ervoor te zorgen dat een bepaald gegevenstype wordt geretourneerd:

Reële getallen converteren naar gehele getallen

Scenario: Voorwaardelijke waarden en testen op fouten

Net als Excel heeft DAX functies waarmee u waarden in de gegevens kunt testen en een andere waarde kunt retourneren op basis van een voorwaarde. U kunt bijvoorbeeld een berekende kolom maken waarmee resellers worden gelabeld als Voorkeur of Waarde , afhankelijk van het jaarlijkse verkoopbedrag. Functies die waarden testen, zijn ook handig voor het controleren van het bereik of het type waarden, om te voorkomen dat onverwachte gegevensfouten berekeningen breken.

Een waarde maken op basis van een voorwaarde

U kunt geneste IF-voorwaarden gebruiken om waarden te testen en nieuwe waarden voorwaardelijk te genereren. De volgende onderwerpen bevatten enkele eenvoudige voorbeelden van voorwaardelijke verwerking en voorwaardelijke waarden:

Testen op fouten in een formule

In tegenstelling tot Excel kunt u geen geldige waarden hebben in één rij van een berekende kolom en ongeldige waarden in een andere rij. Als er een fout optreedt in een deel van een Power Pivot kolom, wordt de hele kolom gemarkeerd met een fout, zodat u altijd formulefouten moet corrigeren die resulteren in ongeldige waarden.

Als u bijvoorbeeld een formule maakt die door nul wordt gedeeld, krijgt u mogelijk het oneindigheidsresultaat of een fout. Sommige formules mislukken ook als de functie een lege waarde tegenkomt wanneer een numerieke waarde wordt verwacht. Terwijl u uw gegevensmodel ontwikkelt, kunt u het beste toestaan dat de fouten worden weergegeven, zodat u op het bericht kunt klikken en het probleem kunt oplossen. Wanneer u echter werkmappen publiceert, moet u foutafhandeling opnemen om te voorkomen dat onverwachte waarden ertoe leiden dat berekeningen mislukken.

Om fouten in een berekende kolom te voorkomen, gebruikt u een combinatie van logische en informatiefuncties om te testen op fouten en altijd geldige waarden te retourneren. In de volgende onderwerpen vindt u enkele eenvoudige voorbeelden van hoe u dit doet in DAX:

Scenario's: Time Intelligence gebruiken

De DAX time intelligence-functies bevatten functies om datums of datumbereiken op te halen uit uw gegevens. Vervolgens kunt u deze datums of datumbereiken gebruiken om waarden voor vergelijkbare perioden te berekenen. De time intelligence-functies bevatten ook functies die werken met standaarddatumintervallen, zodat u waarden voor maanden, jaren of kwartalen kunt vergelijken. U kunt ook een formule maken waarmee waarden voor de eerste en laatste datum van een opgegeven periode worden vergeleken.

Zie Time Intelligence Functions (DAX) voor een lijst met alle time intelligence-functies. Zie Datums in Power Pivot voor tips over het effectief gebruiken van datums en tijden in een Power Pivot-analyse.

Cumulatieve verkoop berekenen

De volgende onderwerpen bevatten voorbeelden van het berekenen van eind- en openingssaldi. Met de voorbeelden kunt u lopende saldi maken over verschillende intervallen, zoals dagen, maanden, kwartalen of jaren.

Waarden in de loop van de tijd vergelijken

De volgende onderwerpen bevatten voorbeelden van het vergelijken van sommen over verschillende perioden. De standaardperioden die door DAX worden ondersteund, zijn maanden, kwartalen en jaren.

Een waarde berekenen voor een aangepast datumbereik

Zie de volgende onderwerpen voor voorbeelden van het ophalen van aangepaste datumbereiken, zoals de eerste 15 dagen na het begin van een verkooppromotie.

Als u time intelligence-functies gebruikt om een aangepaste set datums op te halen, kunt u die set datums gebruiken als invoer voor een functie die berekeningen uitvoert, om aangepaste aggregaties te maken tussen perioden. Zie het volgende onderwerp voor een voorbeeld van hoe u dit doet:

  • PARALLELPERIOD, functie

    Opmerking: Als u geen aangepast datumbereik hoeft op te geven, maar werkt met standaard boekhoudeenheden zoals maanden, kwartalen of jaren, raden we u aan berekeningen uit te voeren met behulp van de time intelligence-functies die voor dit doel zijn ontworpen, zoals TOTALQTD, TOTALMTD, TOTALQTD, enzovoort.

Scenario's: waarden rangschikken en vergelijken

Als u alleen het hoogste aantal items in een kolom of draaitabel wilt weergeven, hebt u verschillende opties:

  • U kunt de functies in Excel gebruiken om een topfilter te maken. U kunt ook een aantal bovenste of laagste waarden in een draaitabel selecteren. In het eerste deel van deze sectie wordt beschreven hoe u filtert op de tien belangrijkste items in een draaitabel. Zie de Excel-documentatie voor meer informatie.

  • U kunt een formule maken die waarden dynamisch rangschikt en vervolgens filteren op de classificatiewaarden, of de classificatiewaarde gebruiken als een slicer. In het tweede deel van deze sectie wordt beschreven hoe u deze formule maakt en deze classificatie vervolgens gebruikt in een slicer.

Elke methode heeft voor- en nadelen.

  • Het Excel Top-filter is eenvoudig te gebruiken, maar het filter is alleen bedoeld voor weergavedoeleinden. Als de onderliggende gegevens van de draaitabel worden gewijzigd, moet u de draaitabel handmatig vernieuwen om de wijzigingen te zien. Als u dynamisch met classificaties wilt werken, kunt u DAX gebruiken om een formule te maken waarmee waarden worden vergeleken met andere waarden in een kolom.

  • De DAX-formule is krachtiger; Bovendien kunt u, door de classificatiewaarde toe te voegen aan een slicer, gewoon op de slicer klikken om het aantal topwaarden te wijzigen dat wordt weergegeven. De berekeningen zijn echter rekenkundig duur en deze methode is mogelijk niet geschikt voor tabellen met veel rijen.

Alleen de tien belangrijkste items in een draaitabel weergeven

De hoogste of laagste waarden in een draaitabel weergeven

  1. Klik in de draaitabel op de pijl-omlaag in de kop Rijlabels .

  2. Selecteer Waardefilters> Top 10.

  3. Kies in het dialoogvenster Top 10 Filter <kolomnaam> de kolom die u wilt rangschikken en het aantal waarden als volgt:

    1. Selecteer Boven om de cellen met de hoogste waarden weer te geven of Onder om de cellen met de laagste waarden weer te geven.

    2. Typ het aantal bovenste of laagste waarden dat u wilt zien. De standaardwaarde is 10.

    3. Selecteer hoe u de waarden wilt weergeven:

Naam

Beschrijving

Items

Selecteer deze optie om de draaitabel te filteren, zodat alleen de lijst met de bovenste of onderste items op hun waarden wordt weergegeven.

Percentage berekenen

Selecteer deze optie om de draaitabel te filteren om alleen de items weer te geven die het opgegeven percentage behalen.

Som

Selecteer deze optie om de som van de waarden voor de bovenste of onderste items weer te geven.

  1. Selecteer de kolom met de waarden die u wilt rangschikken.

  2. Klik op OK.

Items dynamisch orden met behulp van een formule

Het volgende onderwerp bevat een voorbeeld van het gebruik van DAX om een classificatie te maken die is opgeslagen in een berekende kolom. Omdat DAX-formules dynamisch worden berekend, kunt u er altijd zeker van zijn dat de classificatie juist is, zelfs als de onderliggende gegevens zijn gewijzigd. Omdat de formule wordt gebruikt in een berekende kolom, kunt u de classificatie in een slicer gebruiken en vervolgens top 5, top 10 of zelfs top 100 waarden selecteren.

Meer hulp nodig?

Meer opties?

Verken abonnementsvoordelen, blader door trainingscursussen, leer hoe u uw apparaat kunt beveiligen en meer.

Community's helpen u vragen te stellen en te beantwoorden, feedback te geven en te leren van experts met uitgebreide kennis.