Opslag i PowerPivot-formler

Gælder for
Excel til Microsoft 365 Excel 2024 Excel 2021 Excel 2019 Excel 2016

En af de mest effektive funktioner i Power Pivot er muligheden for at oprette relationer mellem tabeller og derefter bruge de relaterede tabeller til at slå op eller filtrere relaterede data. Du henter relaterede værdier fra tabeller ved hjælp af det formelsprog, der leveres med Power Pivot, DAX (Data Analysis Expressions). DAX bruger en relationel model og kan derfor nemt og præcist hente relaterede eller tilsvarende værdier i en anden tabel eller kolonne. Hvis du kender LOPSLAG i Excel, er denne funktionalitet i Power Pivot den samme, men meget nemmere at implementere.

Du kan oprette formler, der udfører opslag som en del af en beregnet kolonne eller som en del af en måling til brug i en pivottabel eller et pivotdiagram. Du kan finde flere oplysninger under følgende emner:

Beregnede felter i Power Pivot

Beregnede kolonner i Power Pivot

I dette afsnit beskrives de DAX-funktioner, der leveres til opslag, sammen med nogle eksempler på, hvordan du bruger funktionerne.

Bemærk

Afhængigt af typen af opslagshandling eller opslagsformel, du vil bruge, skal du muligvis først oprette en relation mellem tabellerne.

Om opslagsfunktioner

Muligheden for at slå matchende eller relaterede data fra en anden tabel op er især nyttig i situationer, hvor den aktuelle tabel kun har en identifikator af en slags, men de data, du skal bruge (f.eks. produktpris, navn eller andre detaljerede værdier), gemmes i en relateret tabel. Det er også nyttigt, når der er flere rækker i en anden tabel, der er relateret til den aktuelle række eller aktuelle værdi. Du kan f.eks. nemt hente alle salg, der er knyttet til et bestemt område, en butik eller en sælger.

I modsætning til Excel-opslagsfunktioner som f.eks. LOPSLAG, der er baseret på matrixer eller SLÅ.OP, som får den første af flere matchende værdier, følger DAX eksisterende relationer mellem tabeller, der er forbundet med nøgler, for at få den enkelte relaterede værdi, der svarer nøjagtigt. DAX kan også hente en tabel med poster, der er relateret til den aktuelle post.

Bemærk

Hvis du kender relationsdatabaser, kan du betragte opslag i Power Pivot som svarende til en indlejret sætning for undermarkering i Transact-SQL.

Funktionen RELATED returnerer en enkelt værdi fra en anden tabel, der er relateret til den aktuelle værdi i den aktuelle tabel. Du angiver den kolonne, der indeholder de ønskede data, og funktionen følger eksisterende relationer mellem tabeller for at hente værdien fra den angivne kolonne i den relaterede tabel. I nogle tilfælde skal funktionen følge en kæde af relationer for at hente dataene.

Antag f.eks., at du har en liste over dagens forsendelser i Excel. Men listen indeholder kun et medarbejder-id, et ordre-id og et speditør-id, hvilket gør rapporten svær at læse. Hvis du vil have de ekstra oplysninger, du ønsker, kan du konvertere listen til en sammenkædet Tabel i Power Pivot og derefter oprette relationer til tabellerne Medarbejder og Forhandler, matche Medarbejder-id med feltet EmployeeKey og ResellerID med feltet ResellerKey.

Hvis du vil have vist opslagsoplysningerne i den sammenkædede tabel, skal du tilføje to nye beregnede kolonner med følgende formler:

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

Dagens forsendelser før opslag

Ordre-id Medarbejder-id Forhandler-id
100314 230 445
100315 15 445
100316 76 108

Medarbejdertabel

Medarbejder-id Medarbejder Forhandler
230 Kuppa Vamsi Modulopbygget cyklussystemer
15 Pilar Ackeman Modulopbygget cyklussystemer
76 Kim Ralls Tilknyttede cykler

Dagens forsendelser med opslag

Ordre-id Medarbejder-id Forhandler-id Medarbejder Forhandler
100314 230 445 Kuppa Vamsi Modulopbygget cyklussystemer
100315 15 445 Pilar Ackeman Modulopbygget cyklussystemer
100316 76 108 Kim Ralls Tilknyttede cykler

Funktionen bruger relationerne mellem den sammenkædede tabel og tabellen Medarbejdere og forhandlere til at få det korrekte navn for hver række i rapporten. Du kan også bruge relaterede værdier til beregninger. Du kan få mere at vide og se eksempler under Funktionen RELATED.

Funktionen RELATEDTABLE følger en eksisterende relation og returnerer en tabel, der indeholder alle matchende rækker fra den angivne tabel. Antag f.eks., at du vil finde ud af, hvor mange ordrer hver forhandler har afgivet i år. Du kan oprette en ny beregnet kolonne i tabellen Forhandlere, der indeholder følgende formel, som slår poster op for hver forhandler i tabellen ResellerSales_USD og tæller antallet af individuelle ordrer, der er afgivet af hver forhandler. 

=TÆLVR(RELATEDTABLE(ResellerSales_USD))

I denne formel henter funktionen RELATEDTABLE først værdien af ResellerKey for hver forhandler i den aktuelle tabel. Du behøver ikke at angive id-kolonnen nogen steder i formlen, da Power Pivot bruger den eksisterende relation mellem tabellerne. Funktionen RELATEDTABLE henter derefter alle rækker fra den ResellerSales_USD tabel, der er relateret til hver forhandler, og tæller rækkerne. Hvis der ikke er nogen relation (direkte eller indirekte) mellem de to tabeller, får du alle rækker fra den ResellerSales_USD tabel.

For forhandleren Modular Cycle Systems i vores eksempeldatabase er der fire ordrer i salgstabellen, så funktionen returnerer 4. For Tilknyttede cykler har forhandleren ingen salg, så funktionen returnerer en tom.

Forhandler Poster i salgstabellen for denne forhandler
Modulopbygget cyklussystemer Forhandler-id
445
445
445
445
Forhandler-id
Tilknyttede cykler

Bemærk

Da funktionen RELATEDTABLE returnerer en tabel, ikke en enkelt værdi, skal den bruges som argument til en funktion, der udfører handlinger på tabeller. Du kan få mere at vide under Funktionen RELATEDTABLE.

Toppen af siden