Använda parametrar för att begära indata när en fråga körs

Använda parametrar för att begära indata när en fråga körs

Om du vill att en fråga i en Access-skrivbordsdatabas ska fråga efter villkor när du kör den ska du skapa en parameterfråga. Då kan du använda samma fråga om och om igen utan att hela tiden öppna den i Designvyn för att redigera villkoren.

Obs!: Den här artikeln gäller inte för Access-webbprogram.

Förstå terminologin

Innan vi fortsätter och beskriver stegen i processen nedan, är det bra om du förstår följande termer:

  • Parameter    En parameter är information som du förser en fråga med när du kör den. Parametrar kan användas fristående eller som en del av ett mer omfattande uttryck för att skapa ett villkor i frågan. Du kan lägga till parametrar i någon av följande typer av frågor:

    • Urvalsfrågor

    • Korsfrågor

    • Lägg till

    • Tabellfrågor

    • uppdatera

  • VillkorVillkor är "filtren" som du lägger till i en fråga för att ange vilka objekt som ska returneras när du kör frågan.   

Mer information om typen av frågor som nämns ovan hittar du i Introduktion till frågor.

Skapa en parameterfråga

Du skapar en parameter på liknande sätt som du lägger till ett vanligt villkor till en fråga:

  1. Skapa en urvalsfråga och öppna sedan frågan i designvyn.

  2. Ange texten som ska visas i parameterrutan på raden Villkor i fältet som du vill tillämpa en parameter på. Texten måste omges av hakparenteser, t.ex. [Ange startdatumet:]

    En enkel parameterfråga.

  3. Upprepa steg 2 för varje fält som du vill lägga till parametrar för.

När du kör frågan visas uppmaningen utan hakparenteserna.

Parameteruppmaning med texten "Ange startdatumet:"

Fyll i värdet som du söker efter och klicka på OK.

Du kan använda flera parametrar i ett villkor. Om du använder uttrycket Mellan [Ange startdatumet:] Och [Ange slutdatumet:]får du två uppmaningar att ange parametervärden när du kör frågan.

Parameterfråga med två parametrar.

Ange parameterns datatyper

Du kan ange att parametern bara ska acceptera en viss typ av data. Det är särskilt viktigt att ange datatypen för tal, valuta och datum/tid eftersom ett mer användbart felmeddelande visas för användarna om de anger fel typ av data, t.ex. om de anger text när en valuta förväntas.

Obs!: Om en parameter konfigurerats till att acceptera textdata, tolkas alla inmatningar som text och inget felmeddelande visas.

Så här anger du datatypen för parametrar i en fråga:

  1. Klicka på Parametrar i gruppen Visa/dölj på fliken Design när frågan är öppen i designvyn.

  2. Ange uppmaningen för varje parameter som du vill ange en datatyp för i kolumnen Parameter i rutan Frågeparametrar. Kontrollera att varje parameter matchar uppmaningen som du använde på raden Villkor i frågerutnätet.

  3. Välj datatyp för respektive parameter i kolumnen Datatyp.

Lägga till en parameter i en unionsfråga

Eftersom du inte kan visa en union-fråga i frågerutnätet måste du göra på ett lite annorlunda sätt:

  1. Öppna unionsfrågan i SQL-vyn.

  2. Lägg till en WHERE-sats som innehåller de fält som du vill lägga till parametrar till.

    Om det redan finns en WHERE-sats kontrollerar du om fälten som du vill lägga till parametrar till redan finns i satsen. Annars lägger du till dem.

  3. Skriv parameteruppmaningen i where-satsen, t.ex. WHERE [StartDate] = [Ange startdatumet:]

    Unionsfråga med två delar med följande sats i båda delarna: WHERE StartDate = [Ange startdatumet:]

    Observera att du måste lägga till samma filter i varje avsnitt av frågan. I bilden ovan har frågan två avsnitt (avgränsade med nyckelordet UNION), vilket betyder att parametern måste läggas till två gånger. När du kör frågan visas uppmaningen emellertid bara en gång (förutsatt att du har stavat uppmaningen på exakt samma sätt i varje avsnitt).

Mer information om unionsfrågor finns i avsnittet om hur du använder en unionsfråga för att visa ett enat resultat från flera frågor.

Kombinera parametrar med jokertecken för bättre flexibilitet

Som med vanliga villkor kan du matcha fler objekt genom att kombinera parametrar med nyckelordet Som och jokertecken. Du kanske exempelvis vill att frågan ska visa en uppmaning om ursprungsland eller -region, men samtidigt matcha värden som innehåller parametersträngen. Så här gör du:

  1. Skapa en urvalsfråga och öppna sedan frågan i designvyn.

  2. Skriv följande på raden Villkor i det fält som du vill lägga till en parameter i: Som "*"&[, den text som ska visas som en uppmaning, följt av ]&"*".

    Frågerutnät med följande villkor i kolumnen för land/region: Som "*" & [Ange land/region:] & "*"

När du kör parameterfrågan visas uppmaningen i dialogrutan utan hakparenteserna och utan nyckelordet Som eller jokertecknen:

En parameteruppmaning med texten "Ange land/region".

När du har lagt till parametern returnerar frågan värden som innehåller parametersträngen. Parametersträngen us returnerar exempelvis objekt där parameterfältet har värdet Australien och objekt där värdet är USA.

Mer information om jokertecken finns i avsnittet Använda jokertecken som villkor.

Returnera objekt som inte matchar parametern

I stället för att skapa en fråga som returnerar objekt som matchar parametern kanske du vill att frågan ska returnera objekt som inte matchar den. Du kanske till exempel vill fråga om ett år och sedan returnera objekt där året är större än det som angetts. Det gör du genom att använda en jämförelseoperator till vänster om den första hakparentesen som omger parameteruppmaningen, t.ex. >[Ange ett år:].

Video: Använda parametrar i frågor

Att använda en parameter i en fråga är lika enkelt som att skapa en fråga med villkor. Du kan utforma en fråga så att den uppmanar dig att ange en viss informationsdel, t.ex ett artikelnummer, eller mer information, till exempel två datum. Varje parameterfråga visar en separat dialogruta för varje parameter, där du uppmanas att ange ett värde för den parametern.

Titta på den här videon om du vill veta mer om hur du skapar parametrar i frågor.

Din webbläsare har inte stöd för video. Installera Microsoft Silverlight, Adobe Flash Player eller Internet Explorer 9.

Mer information finns i

Använda parametrar i frågor, formulär och rapporter

Utöka dina kunskaper
Utforska utbildning
Få nya funktioner först
Anslut till Office Insiders

Hade du nytta av den här informationen?

Tack för din feedback!

Tack för din feedback! Det låter som att det kan vara bra att koppla dig till en av våra Office-supportrepresentanter.

×