Du kan være helt fortrolig med parameterforespørgsler med deres brug i SQL eller Microsoft Query. Men Power Query parametre har nøgleforskelle:
-
Parametre kan bruges i alle forespørgselstrin. Ud over at fungere som et datafilter kan parametre bruges til at angive f.eks. en filsti eller et servernavn.
-
Parametre beder ikke om input. I stedet kan du hurtigt ændre deres værdi ved hjælp af Power Query. Du kan endda gemme og hente værdierne fra celler i Excel.
-
Parametre gemmes i en simpel parameterforespørgsel, men er adskilt fra de dataforespørgsler, de bruges i. Når den er oprettet, kan du føje en parameter til forespørgsler efter behov.
Bemærk Hvis du vil have den anden måde at oprette parameterforespørgsler på, skal du se Opret en parameterforespørgsel i Microsoft Query.
Du kan bruge en parameter til automatisk at ændre en værdi i en forespørgsel og undgå at redigere forespørgslen hver gang for at ændre værdien. Du skal bare ændre parameterværdien. Når du opretter en parameter, gemmes den i en særlig parameterforespørgsel, som du nemt kan ændre direkte fra Excel.
-
Vælg Data > Hent data > andre kilder > Start Power Query-editor.
-
I Power Query-editor skal du vælge Hjem > Administrer parametre > Nye parametre.
-
Vælg Ny i dialogboksen Administrer parameter.
-
Angiv følgende efter behov:
Navn
Dette bør afspejle parameterens funktion, men holde den så kort som muligt.
Beskrivelse
Dette kan indeholde alle detaljer, der kan hjælpe brugerne med at bruge parameteren korrekt.
Påkrævet
Gør et af følgende:
En hvilken som helst værdi Du kan angive en hvilken som helst værdi af en hvilken som helst datatype i parameterforespørgslen. Liste over værdier Du kan begrænse værdierne til en bestemt liste ved at angive dem i det lille gitter. Du skal også vælge en Standardværdi og en Aktuel værdi nedenfor. Forespørgsel Vælg en listeforespørgsel, der ligner en listestruktureret kolonne adskilt af kommaer og omsluttet af klammeparenteser. Et problemstatusfelt kan f.eks. have tre værdier: {"Ny", "Igangværende", "Lukket"}. Du skal oprette listeforespørgslen på forhånd ved at åbne Avanceret editor (vælg Hjem > Avanceret editor), fjerne kodeskabelonen, angive listen over værdier i forespørgselslisteformatet og derefter vælge Udført. Når du er færdig med at oprette parameteren, vises listeforespørgslen i dine parameterværdier.Type
Dette angiver datatypen for parameteren.
Foreslåede værdier
Hvis du ønsker det, kan du tilføje en liste over værdier eller angive en forespørgsel for at komme med forslag til input.
Standardværdi
Dette vises kun, hvis Foreslåede værdier er angivet til Liste over værdier og angiver, hvilket listeelement der er standard. I dette tilfælde skal du vælge en standardindstilling.
Aktuel værdi
Afhængigt af hvor du bruger parameteren, vil forespørgslen muligvis ikke returnere nogen resultater, hvis dette er tomt. Hvis Påkrævet er markeret, må Aktuel værdi ikke være tom.
-
Vælg OK for at oprette parameteren.
Her er en metode til at administrere ændringer af datakildeplaceringer og forhindre opdateringsfejl. Hvis du f.eks. antager et lignende skema og en lignende datakilde, kan du oprette en parameter for nemt at ændre en datakilde og forhindre dataopdateringsfejl. Nogle gange ændres serveren, databasen, mappen, filnavnet eller placeringen. Måske udskifter en databaseadministrator lejlighedsvis en server, en månedlig dråbe af CSV-filer til en anden mappe, eller du har brug for nemt at skifte mellem et udviklings-/test-/produktionsmiljø.
Trin 1: Opret en parameterforespørgsel
I følgende eksempel har du flere CSV-filer, du importerer ved hjælp af handlingen Importmappe (Vælg Data > Hent data > Fra filer > Fra mappe) fra mappe C:\DataFilesCSV1. Men nogle gange bruges en anden mappe nogle gange som en placering til at slippe filerne, C:\DataFilesCSV2. Du kan bruge en parameter i en forespørgsel som erstatningsværdi for den anden mappe.
-
Vælg Hjem > Administrer parametre > ny parameter.
-
Angiv følgende oplysninger i dialogboksen Administrer parameter :
Navn
CSVFileDrop
Beskrivelse
Alternativ placering af filplacering
Påkrævet
Ja
Type
Tekst
Foreslåede værdier
Enhver værdi
Aktuel værdi
C:\DataFilesCSV1
-
Vælg OK.
Trin 2: Føj parameteren til dataforespørgslen
-
Hvis du vil angive mappenavnet som en parameter, skal du i Forespørgselsindstillinger under Forespørgselstrin vælge Kilde og derefter vælge Rediger indstillinger.
-
Sørg for, at indstillingen Filsti er angivet til Parameter, og vælg derefter den parameter, du lige har oprettet, på rullelisten.
-
Vælg OK.
Trin 3: Opdater parameterværdien
Mappeplaceringen er lige blevet ændret, så nu kan du blot opdatere parameterforespørgslen.
-
Vælg Data > Forbindelser & Forespørgsler > fanen Forespørgsler , højreklik på parameterforespørgslen, og vælg derefter Rediger.
-
Angiv den nye placering i feltet Aktuel værdi , f.eks . C:\DataFilesCSV2.
-
Vælg Hjem > Luk & Indlæs.
-
Hvis du vil bekræfte dine resultater, skal du føje nye data til datakilden og derefter opdatere dataforespørgslen med den opdaterede parameter (Vælg Data > Opdater alle).
Nogle gange vil du have en nem måde at ændre filteret på en forespørgsel for at opnå forskellige resultater uden enten at redigere forespørgslen eller lave lidt forskellige kopier af den samme forespørgsel. I dette eksempel ændrer vi en dato for nemt at ændre et datafilter.
-
Hvis du vil åbne en forespørgsel, skal du finde en, der tidligere er indlæst fra Power Query-editor, markere en celle i dataene og derefter vælge Forespørgsel > Rediger. Få mere at vide under Opret, indlæs eller rediger en forespørgsel i Excel.
-
Vælg filterpilen i en kolonneoverskrift for at filtrere dine data, og vælg derefter en filterkommando, f.eks . Dato-og klokkeslætsfiltre > Efter. Dialogboksen Filtrer rækker vises.
-
Vælg knappen til venstre for feltet Værdi , og gør derefter et af følgende:
-
Hvis du vil bruge en eksisterende parameter, skal du vælge Parameter og derefter vælge den ønskede parameter på listen, der vises til højre.
-
Hvis du vil bruge en ny parameter, skal du vælge Ny parameter og derefter oprette en parameter.
-
-
Angiv den nye dato i feltet Aktuel værdi , og vælg derefter Hjem > Luk & Indlæs.
-
Hvis du vil bekræfte dine resultater, skal du føje nye data til datakilden og derefter opdatere dataforespørgslen med den opdaterede parameter (Vælg Data > Opdater alle). Du kan f.eks. ændre filterværdien til en anden dato for at få vist nye resultater.
-
Angiv den nye dato i feltet Aktuel værdi .
-
Vælg Hjem > Luk & Indlæs.
-
Hvis du vil bekræfte dine resultater, skal du føje nye data til datakilden og derefter opdatere dataforespørgslen med den opdaterede parameter (Vælg Data > Opdater alle).
I dette eksempel læses værdien i forespørgselsparameteren fra en celle i projektmappen. Du behøver ikke at ændre parameterforespørgslen, du skal blot opdatere celleværdien. Du vil f.eks. filtrere en kolonne efter det første bogstav, men nemt ændre værdien til et bogstav fra A til Å.
-
I regnearket i en projektmappe, hvor den forespørgsel, du vil filtrere, er indlæst, skal du oprette en Excel-tabel med to celler: en overskrift og en værdi.
MitFilter
G
-
Markér en celle i Excel-tabellen, og vælg derefter Data > Hent data > Fra tabel/område. Power Query-editor vises.
-
I feltet Navn i ruden Forespørgselsindstillinger i højre side skal du ændre forespørgselsnavnet, så det giver mere mening, f.eks. FilterCellValue.
-
Hvis du vil overføre værdien i tabellen og ikke selve tabellen, skal du højreklikke på værdien i Datavisning og derefter vælge Analysér ned.
Bemærk, at formlen er ændret til = #"Changed Type"{0}[MyFilter]
Når du bruger Excel-tabellen som filter i trin 10, refererer Power Query til tabelværdien som filterbetingelsen. En direkte reference til Excel-tabellen ville medføre en fejl.
-
Vælg Hjem > Luk & Indlæs > Luk & Indlæs til. Du har nu en forespørgselsparameter med navnet "FilterCellValue", som du bruger i trin 12.
-
I dialogboksen Importér data skal du vælge Opret kun forbindelse og derefter vælge OK.
-
Åbn den forespørgsel, du vil filtrere med værdien i tabellen FilterCellValue, en tidligere indlæst fra Power Query-editor, ved at markere en celle i dataene og derefter vælge Forespørgsel > Rediger. Få mere at vide under Opret, indlæs eller rediger en forespørgsel i Excel.
-
Vælg filterpilen i en kolonneoverskrift for at filtrere dine data, og vælg derefter en filterkommando, f.eks . Tekstfiltre > Begynder med. Dialogboksen Filtrer rækker vises.
-
Angiv en vilkårlig værdi i feltet Værdi , f.eks. "G", og vælg derefter OK. I dette tilfælde er værdien en midlertidig pladsholder for værdien i tabellen FilterCellValue, som du angiver i næste trin.
-
Vælg pilen i højre side af formellinjen for at få vist hele formlen. Her er et eksempel på en filterbetingelse i en formel:
= Table.SelectRows(#"Changed Type", each Text.StartsWith([Name], "G")) -
Vælg værdien af filteret. Vælg "G" i formlen.
-
Brug M Intellisense til at skrive det første bogstav i den FilterCellValue-tabel, du har oprettet, og vælg det derefter på den liste, der vises.
-
Vælg Hjem > Luk > Luk & Indlæs.
Resultat
Forespørgslen bruger nu værdien i den Excel-tabel, du har oprettet, til at filtrere forespørgselsresultaterne. Hvis du vil bruge en ny værdi, skal du redigere celleindholdet i den oprindelige Excel-tabel i trin 1, ændre "G" til "V" og derefter opdatere forespørgslen.
Du kan styre, om parameterforespørgsler er tilladte eller ikke tilladt.
-
I Power Query-editor skal du vælge Indstillinger for fil > og indstillinger > Forespørgselsindstillinger > Power Query-editor.
-
I ruden til venstre under GLOBAL skal du vælge Power Query-editor.
-
I ruden til højre under Parametre skal du markere eller fjerne markeringen i Tillad altid parameterisering i datakilde- og transformationsdialogbokse.