Introduktion till uttryck

Gäller för
Access för Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

Du kan använda uttryck för en mängd olika uppgifter i Microsoft Access, till exempel utföra matematiska beräkningar, kombinera eller extrahera text eller verifiera data. Den här artikeln innehåller översiktsinformation om uttryck – när de ska användas, vilka komponenter de är och hur de jämförs med Microsoft Excel-formler.

I den här artikeln

Uttryck – en översikt

Tänk på det så här: när du vill att Access ska göra någonting måste du prata programmets språk. Anta till exempel att du vill säga till Access "Titta på fältet Födelsedatum i tabellen Kunder och berätta vilket år kunden föddes". Du kan skriva det här uttrycket som:

DatePart("yyyy",[Customers]![BirthDate])

Det här uttrycket består av funktionen DatumDel och två argumentvärden: "yyyy" och [Customers]![BirthDate].

Nu ska vi undersöka uttrycket mer i detalj.

Uttrycksexempel

1 DatumDel är en funktion som undersöker ett datum och returnerar en viss del. I det här fallet används de två första argumenten.

2 Intervallargumentet talar om för Access vilken del av datumet som ska returneras – i det här fallet "yyyy" anger Access att du bara vill att årdelen av datumet ska returneras.

3 Datumargumentet anger var Access ska leta efter datumvärdet – i det här fallet [ anger attCustomers]![BirthDate] Access ska leta efter datumet i fältet Födelsedatum i tabellen Kunder.

Hur du kan använda uttryck

Du kan använda uttryck på följande sätt:

  • Beräkna värden som inte finns direkt i dina data. Du kan beräkna värden i fält i tabeller och frågor, och du kan också beräkna värden i kontroller i formulär och rapporter.
  • Ange ett standardvärde för ett tabellfält eller en kontroll i ett formulär eller en rapport. De här standardvärdena visas varje gång du öppnar en tabell, ett formulär eller en rapport.
  • Skapa ett verifieringsuttryck för att styra vilka värden som användare kan ange i ett fält eller en kontroll.
  • Definiera frågevillkor för att begränsa resultatet till en önskad delmängd.

Beräkna värden

Ett av de vanligaste sätten att använda uttryck i Access är att beräkna värden som inte finns direkt i dina data. En kolumn i en tabell eller fråga som är resultatet av en beräkning kallas för ett beräknat fält. Du kan skapa ett beräknat fält som kombinerar två eller flera tabellfält. Till exempel lagrar många tabeller för- och efternamn i separata fält. Om du vill kombinera de för- och efternamnen och sedan visa dem i ett enda fält kan du skapa ett beräkna fält i tabellen eller i en fråga:

[FirstName] & " " & [LastName].

I det här fallet kombinerar et-tecken (&) värdet i FirstName fältet, ett blanksteg (ett blanksteg inom citattecken) och värdet i LastName fältet.

Definiera ett standardvärde

Du kan också använda uttryck i Access om du vill ange ett standardvärde för ett fält i en tabell eller för en kontroll. Om du till exempel vill ange standardvärdet för ett datumfält till dagens datum skriver du följande i egenskapsrutan Standardvärde för det fältet:

Date()

Skapa ett verifieringsuttryck

Du kan också använda ett uttryck när du vill ange ett verifieringsuttryck. Du kan till exempel använda ett verifieringsuttryck i en kontroll eller ett tabellfält om du vill att det datum som anges ska vara större än eller lika med dagens datum. I så fall anger du värdet i egenskapsrutan Verifieringsuttryck till :

>= Date()

Definiera frågevillkor

Slutligen kan du också använda ett uttryck när du anger villkor för en fråga. Anta att du vill visa produktförsäljning för order som har levererats inom en viss tidsperiod. Du anger då ett villkor som definierar datumintervallet så att bara de rader som uppfyller villkoret returneras av Access. Ditt uttryck kan till exempel se ut så här:

Between #1/1/2017# And #12/31/2017# 

När du lägger till ett villkor i frågan och sedan kör den, returneras bara de värden som matchar angivna datum.

Exempel på uttryck

I tabellen nedan listas några exempel på Access-uttryck och hur de brukar användas:

Uttryck Ändamål
=[RequiredDate]-[ShippedDate] Beräknar differensen mellan datumvärden i två textrutekontroller (med namnet Begärt leveransdatum och Expedierat den) i en rapport.
Date() Anger standardvärdet för ett datum-/tidsfält till dagens datum.
Between #1/1/2017# And #12/31/2017# Anger villkor för ett datumfält i en fråga.
=[Orders Subform].Form!OrderSubtotal Returnerar värdet på kontrollen Orderdelsumma i Orderunderformulär som finns i formuläret Order.
>0 Anger ett verifieringsuttryck för ett numeriskt fält i en tabell  – användarna måste ange värden som är större än noll.

Vissa uttryck börjar med operatorn lika med (=) och andra gör det inte. När du beräknar ett värde för en kontroll i ett formulär eller en rapport använder du operatorn = för att starta uttrycket. I andra fall, till exempel när du skriver ett uttryck i en fråga eller i egenskapen DefaultValue eller ValidationRule för ett fält eller en kontroll, använder du inte operatorn = såvida du inte lägger till uttrycket i ett textfält i en tabell. I vissa fall, till exempel när du lägger till uttryck i frågor, tar Access bort operatorn = automatiskt.

Komponenter i uttryck

Ett uttryck består av et antal möjliga komponenter som du kan använda, enskilt eller i kombination, för att ge ett resultat. Dessa komponenter är:

  • Identifierare Namnen på tabellfält eller kontroller i formulär och rapporter, eller egenskaperna för dessa fält eller kontroller
  • Operatörer Till exempel + (plus) eller - (minus).
  • Funktioner Till exempel SUMMA eller MEDEL.
  • Konstanter Värden som inte ändras, till exempel textsträngar eller tal som inte beräknas av ett uttryck.
  • Värden Strängar, till exempel "Ange ett tal mellan 1 och 10." eller tal, till exempel 1 254, som används i åtgärder.

I följande avsnitt beskrivs dessa komponenter i detalj.

Identifierare

En identifierare är namnet på ett fält, en egenskap eller en kontroll. Du använder en identifierare i ett uttryck när du vill referera till värdet som hör till ett fält, en egenskap eller en kontroll. Tänk till exempel på uttrycket =[RequiredDate]-[ShippedDate]. Det här uttrycket subtraherar värdet ShippedDate för fältet eller kontrollen från värdet för RequiredDate fältet eller kontrollen. I det här uttrycket fungerar båda RequiredDate och ShippedDate som identifierare.

Operatorer

Access har stöd för en mängd olika operatorer, bland annat vanliga aritmetiska operatorer som +, -, * (multiplicera) och / (dividera). Du kan också använda jämförelseoperatorer som < (mindre än) eller > (större än) för att jämföra värden, textoperatorer som och + för att sammanfoga (kombinera) text, logiska operatorer som och And för att fastställa sant eller falskt värden och andra operatorer som &Not är specifika för Access.

Funktioner

Funktioner är inbyggda procedurer som man kan använda i sina uttryck. Man använder funktioner för en mängd olika åtgärder, t.ex. beräkna värden, ändra text och datum samt summera data. En vanlig funktion är till exempel Datum, som ger dagens datum. Du kan använda funktionen Datum på olika sätt, till exempel i ett uttryck som anger standardvärdet för ett fält i en tabell. I det här exemplet är värdet för fältet inställt på dagens datum som standard när någon lägger till en ny post.

Vissa funktioner kräver argument. Ett argument är ett värde som förser funktionen med indata. Om en funktion kräver mer än ett argument måste du avgränsa argumenten med kommatecken. Ta en titt på funktionen DATUM i följande exempeluttryck:

=Format(Date(),"mmmm d, yyyy")

I det här exemplet används två argument:

  • Det första argumentet är Date() funktionen som returnerar dagens datum. När det inte finns några argument måste du fortfarande lägga till funktionens parenteser.
  • Det andra argumentet "mmmm d, yyyy", som avgränsas från det första argumentet med ett kommatecken, anger en textsträng som instruerar funktionen FORMAT hur det returnerade datumvärdet ska formateras. Observera att textsträngen måste omges av citattecken.

Det här uttrycket visar också att du ofta kan kapsla värde som returneras av en funktion som ett argument för en annan funktion. I det här fallet Date() fungerar det som ett argument.

Konstanter

En konstant är ett objekt vars värde inte ändras medan Access körs. TrueKonstanterna och FalseNull används ofta i uttryck.

Värden

Du kan använda exakta värden, till exempel 1,254 eller strängen "Ange ett tal mellan 1 och 10." Du kan även använda numeriska värden, som kan vara en serie siffror, inklusive ett tecken eller och en decimal, om det behövs.

När du använder textsträngsvärden placerar du dem inom citattecken, vilket säkerställer att de tolkas korrekt i Access. I vissa fall infogas citattecknen automatiskt. När du till exempel skriver text i ett uttryck för ett verifieringsuttryck eller för frågevillkor omsluts textsträngarna automatiskt med citattecken.

Om du vill använda datum-/tidsvärden omsluter du värdena med nummertecken (#). Till exempel #3-7-17#, #7-Mar-17#, och #Mar-7-2017# är alla giltiga datum-/tidsvärden. När ett giltigt värde för datum-/tidsvärde påträffas som omges av #-tecken, behandlas värdet automatiskt som datatypen Datum/tid i Access.

Överst på sidan

Jämförelse mellan Access-uttryck och Excel-formler

Access-uttryck liknar Excel-formler på så sätt att båda använder liknande element för att returnera ett resultat. Både Excel-formler och Access-uttryck innehåller ett eller flera av följande element:

  • Identifierare I Excel är identifierare namnen på enskilda celler eller cellområden i en arbetsbok, till exempel A1, B3:C6 eller Blad2! C32. I Access är identifierare namnen på tabellfält (t.ex. [Contacts]![First Name]), kontroller i formulär eller rapporter (t.ex Forms![Task List]![Description]. ) eller egenskaperna för dessa fält eller kontroller (t.ex Forms![Task List]![Description].ColumnWidth. ).
  • Operatörer I både Access och Excel används operatorer för att jämföra värden eller för att utföra enkla beräkningar på dina data. Exempel är + (plus) eller - (minus).
  • Funktioner I både Access och Excel används funktioner och argument för att utföra uppgifter som du inte kan göra med enbart operatorer– till exempel kan du hitta medelvärdet av värdena i ett fält eller konvertera resultatet av en beräkning till ett valutaformat. Exempel på funktioner är SUMMA och STDV. Argument är värden som ger information för funktioner. Observera att både Access och Excel har många funktioner du kan välja mellan, men ibland skiljer sig namnen på liknande funktioner i programmen åt. Till exempel motsvarar funktionen AVERAGE i Excel funktionen AVG i Access.
  • Konstanter I både Access och Excel är konstanter värden som inte förändras  – tal som inte beräknas med hjälp av ett uttryck.
  • Värden I både Access och Excel används värden på liknande sätt.

I Access-uttryck används operatorer och konstanter som påminner om dem som används i Excel-formler, men andra identifierare och funktioner används i Access-uttryck. Excel-formler används vanligtvis endast i kalkylbladsceller. Du kan dock använda Access-uttryck på många ställen i Access för många olika uppgifter, inklusive följande:

  • Skapa beräknade kontroller i formulär och rapporter
  • Skapa beräknade fält i tabeller och frågor
  • Använda dem som villkor i frågor
  • Validera data som anges i ett fält eller i en kontroll i ett formulär
  • Gruppera data i rapporter

Du kan använda antingen ett Access-uttryck eller en Excel-formel när du vill beräkna numeriska eller datum-/tidvärden med hjälp av matematiska operatorer. Om du till exempel vill beräkna ett rabatterat pris för en kund kan du använda Excel-formeln =C2*(1-D2) eller Access-uttrycket = [Unit Price]*(1-[Discount]).

Du kan också använda ett Access-uttryck eller en Excel-formel när du vill kombinera, dela upp, eller på annat sätt förändra strängar med hjälp av strängoperatorer. Om du till exempel vill kombinera ett för- och efternamn till en sträng kan du använda Excel-formeln =D3 & " " & D4 eller Access-uttrycket = [First Name] & " " & [Last Name].

Överst på sidan

Använda UttrycksverktygetSkapa ett uttryckGuide till uttryckssyntaxExempel på uttryck