Oppslag i Power Pivot-formler

Gjelder for
Excel for Microsoft 365 Excel 2024 Excel 2021 Excel 2019 Excel 2016

En av de kraftigste funksjonene i Power Pivot er muligheten til å opprette relasjoner mellom tabeller og deretter bruke de relaterte tabellene til å slå opp eller filtrere relaterte data. Du henter relaterte verdier fra tabeller ved hjelp av formelspråket som følger med Power Pivot, Data Analysis Expressions (DAX). DAX bruker en relasjonsmodell, og kan derfor enkelt og nøyaktig hente relaterte eller tilsvarende verdier i en annen tabell eller kolonne. Hvis du er kjent med FINN.RAD i Excel, ligner denne funksjonen i Power Pivot, men er mye enklere å implementere.

Du kan opprette formler som utfører oppslag som en del av en beregnet kolonne, eller som en del av et mål for bruk i en pivottabell eller et pivotdiagram. Hvis du vil ha mer informasjon, kan du se følgende emner:

Beregnede felt i PowerPivot

Beregnede kolonner i PowerPivot

Denne delen beskriver DAX-funksjonene som er angitt for oppslag, sammen med noen eksempler på hvordan du bruker funksjonene.

Obs!

Avhengig av typen oppslagsoperasjon eller oppslagsformel du vil bruke, må du kanskje opprette en relasjon mellom tabellene først.

Forstå oppslagsfunksjoner

Muligheten til å slå opp samsvarende eller relaterte data fra en annen tabell er spesielt nyttig i situasjoner der den gjeldende tabellen bare har en identifikator av et eller annet slag, men dataene du trenger (for eksempel produktpris, navn eller andre detaljerte verdier) er lagret i en relatert tabell. Det er også nyttig når det er flere rader i en annen tabell som er relatert til gjeldende rad eller gjeldende verdi. Du kan for eksempel enkelt hente alle salg knyttet til en bestemt region, butikk eller selger.

I motsetning til oppslagsfunksjoner i Excel, for eksempel VLOOKUP, som er basert på matriser, eller LOOKUP, som henter den første av flere samsvarende verdier, følger DAX eksisterende relasjoner mellom tabeller som er koblet sammen med nøkler, for å få den relaterte verdien som samsvarer nøyaktig. DAX kan også hente en tabell med poster som er relatert til den gjeldende posten.

Obs!

Hvis du er kjent med relasjonsdatabaser, kan du tenke på oppslag i Power Pivot som en nestet delvalgsetning i Transact-SQL.

RELATED-funksjonen returnerer én enkelt verdi fra en annen tabell relatert til den gjeldende verdien i den gjeldende tabellen. Du angir kolonnen som inneholder dataene du vil bruke, og funksjonen følger eksisterende relasjoner mellom tabeller for å hente verdien fra den angitte kolonnen i den relaterte tabellen. I noen tilfeller må funksjonen følge en kjede av relasjoner for å hente dataene.

Anta for eksempel at du har en liste over dagens forsendelser i Excel. Listen inneholder imidlertid bare en ansatt-ID, en ordre-ID-nummer og en speditør-ID, noe som gjør rapporten vanskelig å lese. Hvis du vil ha den ekstra informasjonen du vil ha, kan du konvertere listen til en Power Pivot-koblet tabell og deretter opprette relasjoner til Ansatt- og Forhandler-tabellene, der AnsattID samsvarer med EmployeeKey-feltet og ResellerID med ResellerKey-feltet.

Hvis du vil vise oppslagsinformasjonen i den koblede tabellen, legger du til to nye beregnede kolonner med følgende formler:

= RELATED('Employees'[EmployeeName])
= RELATED('Resellers'[CompanyName])

Dagens forsendelser før oppslag

Ordre-ID AnsattID Forhandler-ID
100314 230 445
100315 15 445
100316 76 108

Ansattabell

AnsattID Ansatt Forhandler
230 Kuppa Vamsi Modulære syklussystemer
15 Pilar Ackeman Modulære syklussystemer
76 Kim Ralls Tilknyttede sykler

Dagens forsendelser med oppslag

Ordre-ID AnsattID Forhandler-ID Ansatt Forhandler
100314 230 445 Kuppa Vamsi Modulære syklussystemer
100315 15 445 Pilar Ackeman Modulære syklussystemer
100316 76 108 Kim Ralls Tilknyttede sykler

Funksjonen bruker relasjonene mellom den koblede tabellen og tabellen Ansatte og forhandlere til å få riktig navn for hver rad i rapporten. Du kan også bruke relaterte verdier for beregninger. Hvis du vil ha mer informasjon og eksempler, kan du se RELATED-funksjonen.

RELATEDTABLE-funksjonen følger en eksisterende relasjon og returnerer en tabell som inneholder alle samsvarende rader fra den angitte tabellen. La oss for eksempel si at du ønsker å finne ut hvor mange ordrer hver forhandler har lagt inn i år. Du kan opprette en ny beregnet kolonne i forhandlertabellen som inneholder formelen nedenfor, som slår opp poster for hver forhandler i ResellerSales_USD tabellen, og teller antall individuelle ordrer som er plassert av hver forhandler. 

=COUNTROWS(RELATEDTABLE(ResellerSales_USD))

I denne formelen henter RELATEDTABLE-funksjonen først verdien av ResellerKey for hver forhandler i den gjeldende tabellen. (Du trenger ikke å angi ID-kolonnen noe sted i formelen, fordi Power Pivot bruker den eksisterende relasjonen mellom tabellene.) RELATEDTABLE-funksjonen henter deretter alle radene fra den ResellerSales_USD tabellen som er relatert til hver forhandler, og teller radene. Hvis det ikke er noen relasjon (direkte eller indirekte) mellom de to tabellene, får du alle radene fra den ResellerSales_USD tabellen.

For forhandleren Modular Cycle Systems i eksempeldatabasen vår er det fire ordrer i salgstabellen, så funksjonen returnerer 4. Forhandleren har ikke salg for tilknyttede sykler, så funksjonen returnerer et tomt felt.

Forhandler Poster i salgstabellen for denne forhandleren
Modulære syklussystemer Forhandler-ID
445
445
445
445
Forhandler-ID
Tilknyttede sykler

Obs!

Siden RELATEDTABLE-funksjonen returnerer en tabell, ikke en enkeltverdi, må den brukes som et argument til en funksjon som utfører operasjoner på tabeller. Hvis du vil ha mer informasjon, kan du se RELATEDTABLE-funksjonen.

Til toppen av siden