Applies ToExcel för Microsoft 365 Excel för Microsoft 365 för Mac Excel för webben

Du kanske är ganska bekant med parameterfrågor med deras användning i SQL eller Microsoft Query. Men Power Query parametrar har viktiga skillnader:

  • Parametrar kan användas i alla frågesteg. Förutom att fungera som ett datafilter kan parametrar användas för att ange till exempel en sökväg eller ett servernamn. 

  • Parametrarna uppmanar inte till indata. I stället kan du snabbt ändra deras värde med Power Query. Du kan till och med lagra och hämta värdena från celler i Excel.

  • Parametrar sparas i en enkel parameterfråga, men skiljer sig från de datafrågor som de används i.  När du har skapat den kan du lägga till en parameter i frågor efter behov.

Observera    Mer information om hur du skapar parameterfrågor finns i Skapa en parameterfråga i Microsoft Query.

Du kan använda en parameter för att automatiskt ändra ett värde i en fråga och undvika att redigera frågan varje gång du ändrar värdet. Du ändrar bara parametervärdet. När du skapar en parameter sparas den i en särskild parameterfråga som du enkelt kan ändra direkt från Excel.

  1. Välj Data > Hämta data > andra källor > starta Power Query-redigeraren.

  2. I Power Query-redigeraren väljer du Start > Hantera parametrar > Nya parametrar.

  3. Välj Ny i dialogrutan Hantera parameter.

  4. Ange följande efter behov:

    Namn    

    Detta bör återspegla parameterns funktion, men håll den så kort som möjligt.

    Beskrivning    

    Det kan innehålla information som hjälper användarna att använda parametern på rätt sätt.

    Obligatorisk    

    Gör något av följande:Valfritt värde Du kan ange valfritt värde för valfri datatyp i parameterfrågan.Lista med värden    Du kan begränsa värdena till en viss lista genom att ange dem i det lilla rutnätet. Du måste också välja ett standardvärde och ett aktuellt värde nedan.Fråga Välj en listfråga, som liknar en liststrukturerad kolumn avgränsad med kommatecken och inom klammerparenteser.Ett statusfält för problem kan till exempel ha tre värden: {"Ny", "Pågående", "Stängd"}. Du måste skapa listfrågan i förväg genom att öppna Avancerad redigerare (välj Start > Avancerad redigerare), ta bort kodmallen, ange listan med värden i frågelistformatet och sedan välja Klar.När du är klar med att skapa parametern visas listfrågan i parametervärdena.

    Typ    

    Detta anger parameterns datatyp.

    Föreslagna värden    

    Om du vill kan du lägga till en lista med värden eller ange en fråga för att ge förslag på indata.

    Standardvärde

    Det här visas bara om Föreslagna värden är inställt på Lista med värden och anger vilket listobjekt som är standard. I det här fallet måste du välja en standardinställning.

    Aktuellt värde    

    Om parametern är tom kan frågan, beroende på var du använder parametern, inte returnera några resultat. Om Obligatoriskt är markerat kan aktuellt värde inte vara tomt.

  5. Om du vill skapa parametern väljer du OK.

Här är ett sätt att hantera ändringar i datakällans platser och förhindra uppdateringsfel. Om du till exempel antar ett liknande schema och en liknande datakälla kan du skapa en parameter för att enkelt ändra en datakälla och förhindra datauppdateringsfel. Ibland ändras servern, databasen, mappen, filnamnet eller platsen. Kanske byter en databashanterare ibland ut en server, en månatlig droppe CSV-filer hamnar i en annan mapp eller så behöver du enkelt växla mellan en utvecklings-/test-/produktionsmiljö.

Steg 1: Skapa en parameterfråga

I följande exempel har du flera CSV-filer som du importerar med åtgärden Importera mapp (Välj data > Hämta data > Från filer > Från mapp) från mappen C:\DataFilesCSV1. Men ibland används en annan mapp ibland som en plats för att släppa filerna, C:\DataFilesCSV2. Du kan använda en parameter i en fråga som ett ersättningsvärde för den andra mappen.

  1. Välj Start > Hantera parametrar > ny parameter.

  2. Ange följande information i dialogrutan Hantera parameter :

    Namn

    CSVFileDrop

    Beskrivning

    Alternativ plats för filsläpp

    Obligatorisk

    Ja

    Typ

    Text

    Föreslagna värden

    Valfritt värde

    Aktuellt värde

    C:\DataFilesCSV1

  3. Välj OK.

Steg 2: Lägg till parametern i datafrågan

  1. Om du vill ange mappnamnet som en parameter går du till Frågeinställningar, under Frågesteg, väljer Källa och sedan Redigera inställningar.

  2. Kontrollera att alternativet Sökväg är inställt på Parameter och välj sedan parametern du just skapade i listrutan.

  3. Välj OK.

Steg 3: Uppdatera parametervärdet

Mappplatsen har just ändrats, så nu kan du helt enkelt uppdatera parameterfrågan.

  1. Välj Data > Anslutningar & frågor > fliken Frågor , högerklicka på parameterfrågan och välj sedan Redigera.

  2. Ange den nya platsen i rutan Aktuellt värde , till exempel C:\DataFilesCSV2.

  3. Välj Start > Stäng & Läs in.

  4. Bekräfta resultatet genom att lägga till nya data i datakällan och sedan uppdatera datafrågan med den uppdaterade parametern (Välj data > Uppdatera alla).

Ibland vill du ha ett enkelt sätt att ändra filtret för en fråga för att få olika resultat utan att antingen redigera frågan eller göra lite olika kopior av samma fråga. I det här exemplet ändrar vi ett datum för att enkelt ändra ett datafilter.

  1. Om du vill öppna en fråga letar du reda på en som tidigare lästs in från Power Query-redigeraren, markerar en cell i data och väljer sedan Fråga > Redigera. Mer information finns i Skapa, läsa in eller redigera en fråga i Excel.

  2. Välj filterpilen i en kolumnrubrik för att filtrera dina data och välj sedan ett filterkommando, till exempel Datum/tidsfilter > Efter. Dialogrutan Filtrera rader visas.Ange en parameter i dialogrutan Filter

  3. Välj knappen till vänster om rutan Värde och gör sedan något av följande:

    • Om du vill använda en befintlig parameter väljer du Parameter och sedan den parameter du vill använda i listan som visas till höger.

    • Om du vill använda en ny parameter väljer du Ny parameter och skapar sedan en parameter.

  4. Ange det nya datumet i rutan Aktuellt värde och välj sedan Start > Stäng & Läs in.

  5. Bekräfta resultatet genom att lägga till nya data i datakällan och sedan uppdatera datafrågan med den uppdaterade parametern (Välj data > Uppdatera alla). Du kan till exempel ändra filtervärdet till ett annat datum för att se nya resultat.

  6. Ange det nya datumet i rutan Aktuellt värde .

  7. Välj Start > Stäng & Läs in.

  8. Bekräfta resultatet genom att lägga till nya data i datakällan och sedan uppdatera datafrågan med den uppdaterade parametern (Välj data > Uppdatera alla).

I det här exempletläss värdet i frågeparametern från en cell i arbetsboken. Du behöver inte ändra parameterfrågan, du uppdaterar bara cellvärdet. Du vill till exempel filtrera en kolumn efter den första bokstaven, men enkelt ändra värdet till valfri bokstav från A till Ö.

  1. I kalkylbladet i en arbetsbok där frågan du vill filtrera läses in skapar du en Excel-tabell med två celler: en rubrik och ett värde.  

    MyFilter

    G

  2. Markera en cell i Excel-tabellen och välj sedan Data > Hämta data > Från tabell/område. Power Query-redigeraren visas.

  3. I rutan Namn i fönstret Frågeinställningar till höger ändrar du frågenamnet så att det blir mer beskrivande, till exempel FilterCellValue. 

  4. Om du vill överföra värdet i tabellen, och inte själva tabellen, högerklickar du på värdet i dataförhandsgranskningen och väljer granska nedåt.

    Observera att formeln har ändrats till = #"Changed Type"{0}[MyFilter]

    När du använder Excel-tabellen som ett filter i steg 10 refererar Power Query till tabellvärdet som filtervillkor. En direkt referens till Excel-tabellen skulle orsaka ett fel.

  5. Välj Start > Stäng & Läs in > Stäng & Läs in till. Nu har du en frågeparameter med namnet "FilterCellValue" som du använder i steg 12.

  6. Välj Endast Skapa anslutning i dialogrutan Importera data och välj sedan OK.

  7. Öppna frågan som du vill filtrera med värdet i tabellen FilterCellValue, en som tidigare lästs in från Power Query-redigeraren, genom att markera en cell i data och sedan välja Fråga > Redigera. Mer information finns i Skapa, läsa in eller redigera en fråga i Excel.

  8. Välj filterpilen i en kolumnrubrik för att filtrera dina data och välj sedan ett filterkommando, till exempel Textfilter > Börjar med. Dialogrutan Filtrera rader visas. 

  9. Ange ett värde i rutan Värde , till exempel "G" och välj sedan OK. I det här fallet är värdet en tillfällig platshållare för värdet i tabellen FilterCellValue som du anger i nästa steg.

  10. Välj pilen till höger i formelfältet för att visa hela formeln. Här är ett exempel på ett filtervillkor i en formel: = Table.SelectRows(#"Changed Type", varje Text.StartsWith([Name], "G"))

  11. Välj värdet för filtret. Välj "G" i formeln.

  12. Med M Intellisense anger du den första bokstaven i tabellen FilterCellValue som du har skapat och väljer den sedan i listan som visas.

  13. Välj Start > Stäng > Stäng & läs in.

Resultatet

Frågan använder nu värdet i Excel-tabellen som du skapade för att filtrera frågeresultatet. Om du vill använda ett nytt värde redigerar du cellinnehållet i den ursprungliga Excel-tabellen i steg 1, ändrar "G" till "V" och uppdaterar sedan frågan.

Du kan styra om parameterfrågor är tillåtna eller inte.

  1. I Power Query-redigeraren väljer du Arkiv > Alternativ och Inställningar > Frågealternativ > Power Query-redigeraren.

  2. I fönstret till vänster, under GLOBAL, väljer du Power Query-redigeraren.

  3. I fönstret till höger, under Parametrar, markerar eller avmarkerar du Tillåt alltid parameterisering i dialogrutor för datakälla och omvandling.

Se även

Hjälp om Power Query för Excel

Använda frågeparametrar (docs.com)

Behöver du mer hjälp?

Vill du ha fler alternativ?

Utforska prenumerationsförmåner, bläddra bland utbildningskurser, lär dig hur du skyddar din enhet med mera.

Communities hjälper dig att ställa och svara på frågor, ge feedback och få råd från experter med rika kunskaper.