Skapa ett verifieringsuttryck som verifierar data i ett fält

I den här artikeln beskrivs hur du lägger till verifieringsuttryck i en databas. Verifieringsuttryck begränsar vad användarna kan ange i ett visst fält, och ser till att databasanvändarna anger rätt typ eller mängd data.

Vad vill du göra?

Förstå verifieringsuttryck

Verifiera data vid registrering i tabellfält

Verifiera data vid registrering i formulär

Verifiera data vid import

Referens till verifieringsuttryck

Förstå verifieringsuttryck

Ett verifieringsuttryck begränsar eller styr vad användarna kan registrera i ett tabellfält eller en kontroll (till exempel en textruta) i ett formulär. I Microsoft Office Access 2007 går det att verifiera data på en mängd sätt, och du använder för det mesta flera av dessa metoder när du definierar ett verifieringsuttryck. Ett verifieringsuttryck kan liknas vid en uppsättning lager – du använder vissa eller alla av dessa lager när du vill vara säker på att användarna registrerar data på rätt sätt.

  • Datatyper    Datatyper är vanligtvis det första lagret i verifieringen. När du designar en databastabell, definierar du en datatyp för varje fält i tabellen och den datatypen begränsar vad användaren kan registrera. I till exempel ett datum/tid-fält går det bara att registrera datum och tider, och i ett valutafält bara monetära data och så vidare.

  • Fältstorlek    Fältstorlekar är ett annat verifieringslager. Om du till exempel skapar ett fält där förnamn ska lagras, kan du ange att högst 20 tecken ska få plats. På så sätt kan användarna inte klistra in större mängder med text i fältet, och en oerfaren användare förhindras att skriva både för- och efternamn i ett fält som bara är till för förnamnet.

  • Tabellegenskaper    Tabellegenskaper utgör en väldigt specifik typ av verifiering. Du kan till exempel ange egenskapen Obligatoriskt till Ja och på så sätt tvinga användarna att registrera ett värde i fältet.

    Du kan också använda egenskapen Verifieringsuttryck som du vill att vissa värden ska registreras, och egenskapen Verifieringstext om du vill varna användarna när de gör misstag. Om du till exempel skriver ett uttryck som >100 Och <1000 i egenskapen Verifieringsuttryck tvingas användarna att skriva värden mellan 100 och 1 000. Ett uttryck som [Slutdatum]>=[Startdatum] tvingar användarna att skriva ett slutdatum som infaller på eller efter startdatumet. Om du till exempel skriver "Skriv värden mellan 100 och 1 000" eller "Ange ett slutdatum som infaller på eller efter startdatumet" i egenskapen Verifieringstext meddelas användarna när de har gjort ett misstag och hur de ska rätta till felet.

    Mer information om de steg som behövs för att lägga till ett verifieringsuttryck i ett tabellfält finns i avsnittet Verifiera data vid registrering i tabellfält, senare i den här artikeln.

  • Indatamasker    Du kan använda en indatamask om du vill verifiera data genom att tvinga användarna att ange värden på ett visst sätt. En indatamask kan till exempel tvinga användarna att ange ett datum i europeiskt format, till exempel 2007.04.14.

Du kan använda vissa eller alla av dessa metoder när du verifierar data. En del av de här funktionerna, till exempel datatyper, blir automatiskt en del av databasen medan du själv väljer när andra ska användas, till exempel fältegenskaper, verifieringsuttryck och indatamasker.

I den här artikeln beskrivs hur du använder egenskaperna Verifieringstext och Verifieringsuttryck i tabellfält, frågor och kontroller. En mer ingående beskrivning av andra verifieringsverktyg, till exempel datatyper, fältstorlekar och indatamasker, ingår inte i det här avsnittet.

Mer information om datatyper och fältstorlekar finns i artikeln Ändra datatypen för ett fält. Mer information om indatamasker finns i artikeln Skapa en indatamask för att registrera fält- eller kontrollvärden i ett visst format.

Typer av verifieringsuttryck

Du kan skapa två grundläggande typer av verifieringsuttryck:

  • Verifieringsuttryck för fält    Använd ett verifieringsuttryck för fält när du vill kontrollera värdet som du anger i ett fält när du lämnar fältet. Anta att du har ett datumfält och skriver >=#2007-01-01# i egenskapen Verifieringsuttryck för det fältet. Uttrycket kräver att användarna anger ett datum som infaller efter den 1 januari 2007. Om du anger ett datum som infaller före 2007 och sedan försöker flytta fokus till ett annat fält, kan du inte göra det förrän du har rättat till problemet.

  • Verifieringsuttryck för poster (eller tabeller)    Använd ett verifieringsuttryck för poster om du vill styra när det ska gå att spara en post (en rad i en tabell). Till skillnad från verifieringsuttryck för fält refererar verifieringsuttrycket för poster till andra fält i samma tabell. Du kan skapa ett verifieringsuttryck för poster när du behöver kontrollera värdena i ett fält mot värdena i ett annat. Anta att ditt företag måste leverera produkter inom 30 dagar, och måste återbetala en del av inköpspriset till kunden om varorna inte levereras inom den tiden. Du kan då definiera ett verifieringsuttryck för poster som [ObligatorisktDatum]<=[Orderdatum]+30 som ser till att ingen anger ett leveransdatum (värdet i fältet ObligatorisktDatum) som infaller för sent.

Om du tycker att syntaxen för verifieringsuttrycket ser kryptisk ut, finns en förklaring till den och några exempel i tabellerna i avsnittet Syntax för vanliga verifieringsuttryck.

Var du kan använda verifieringsuttryck

Du kan definiera verifieringsuttryck för tabeller och för kontroller i formulär. När du definierar uttryck för tabeller gäller dessa när du importerar data. Om du vill lägga till verifieringsuttryck i en tabell, öppnar du tabellen i designvyn och anger olika tabellegenskaper. Om du vill lägga till verifieringsuttryck i ett formulär öppnar, du formuläret i designvyn och lägger till verifieringsuttryck i egenskaperna för de enskilda kontrollerna.

Anvisningarna i avsnittet Verifiera data vid registrering i tabellfält förklarar hur du lägger till verifieringsuttryck i egenskaperna i tabellfält. Anvisningarna i avsnittet Verifiera data vid registrering i formulär, senare i den här artikeln, förklarar hur du lägger till uttryck i egenskaperna i enskilda kontroller.

Innehåll i ett verifieringsuttryck

Verifieringsuttrycken kan innehålla uttryck – funktioner som returnerar ett enskilt värde. Du kan använda dessa uttryck när du utför beräkningar, redigerar tecken eller testar data. När du skapar verifieringsuttryck använder du uttrycken i första hand när du testar data. Ett uttryck kan till exempel söka efter en serie värden, till exempel "Tokyo" Eller "Moskva" Eller "Paris" Eller "Helsingfors". Uttryck kan också utföra matematiska operationer. Till exempel uttrycket <100 tvingar användarna att ange värden som är mindre än 100. Uttrycket ([Orderdatum] - [Leveransdatum]) beräknar antalet dagar som förflyter mellan den tid beställningen gjordes och när ordern levererades.

I den här artikeln finns ingen fullständig beskrivning av uttryck och funktioner. Mer information om hur du skapar uttryck finns i artikeln Skapa ett uttryck. Mer information om funktioner finns i artiklarna på Microsoft Office Online.

Exempel på hur du kan verifiera data med hjälp av uttryck finns i avsnittet Verifiera data i en post.

Anvisningarna i de följande avsnitten beskriver hur du verifierar data för tabeller, formulär, frågor och import.

Överst på sidan

Verifiera data vid registrering i tabellfält

Anvisningarna i det här avsnittet förklarar hur du skapar verifieringsuttryck på fält- och postnivå, samt hur du testar befintliga data mot ett nytt verifieringsuttryck.

Du kan ange verifieringsuttryck för alla datatyper utom Räknare, OLE-objekt och Bifogad fil samt för talfält som anges till ReplikeringsID.

Verifiera data i ett fält

  1. Högerklicka i navigeringsfönstret på tabellen som du vill ändra och klicka sedan på Design.

  2. Markera fältet som du vill ändra i kolumnen Fältnamn.

  3. Markera egenskapsrutan Verifieringsuttryck på fliken Allmänt i den nedre delen i tabelldesignern och ange sedan verifieringsuttrycket.

    eller

    Klicka på fliken Data i egenskapslistan, klicka på Bild av knapp bredvid för att starta uttrycksverktyget och skapa uttrycket.

    Mer information om hur du använder uttrycksverktyget finns i artikeln Skapa ett uttryck.

    Ange ett uttryck som bara gäller för fältet. Du kan till exempel ange >0 om du vill tvinga användarna att ange positiva värden. Tänk på att ett verifieringsuttryck för ett fält inte refererar till andra fält i tabellen. Om verifieringsuttrycket refererar till andra fält skapas en verifiering på postnivå.

  4. Markera egenskapsrutan Verifieringstext och ange ett verifieringsmeddelande.

    Vilket meddelande du ska skriva beror på verifieringsuttrycket. Skriv ett kort meddelande och försök att förklara var användaren har gjort fel. Om du fortsätter med exemplet från föregående steg kan du använda Skriv bara positiva tal som verifieringstext.

  5. Spara arbetet.

Obs!   Fler exempel på verifiering på fältnivå finns i avsnittet Referens till verifieringsuttryck, senare i den här artikeln.

Verifiera data i en post

  1. Upprepa steg 1-2 i föregående avsnitt för att öppna en tabell i designvyn.

  2. Ange ett verifieringsuttryck på postnivå i egenskapsrutan Verifieringsuttryck på fliken Allmänt.

    eller

    Starta uttrycksverktyget genom att klicka på Bild av knapp bredvid och skapa uttrycket.

    Mer information om hur du använder uttrycksverktyget finns i artikeln Skapa ett uttryck.

    Ett verifieringsuttryck på postnivå refererar till fler än ett tabellfält. Ett verifieringsuttryck som [ObligatorisktDatum]<=[Orderdatum]+30 refererar till två tabellfält, ObligatorisktDatum och Orderdatum, och ser till att användarna anger leveransdatum som inte infaller senare än 30 dagar efter att en order har registrerats. Fler exempel på verifiering på postnivå finns i avsnittet Referens till verifieringsuttryck.

  3. Spara ändringarna.

Testa verifieringsuttrycken

  1. Öppna tabellen som innehåller verifieringsuttrycket i designvyn.

  2. Klicka på Kontrollera verifieringsuttryck i gruppen Verktyg på fliken Design.

  3. Stäng varningsmeddelandet och starta testet genom att klicka på Ja.

  4. Klicka på Ja om du ombeds spara tabellen.

  5. En del andra varningsmeddelanden kanske visas medan du fortsätter. Läs instruktionerna i meddelandena och klicka på Ja eller Nej om du vill fortsätta respektive stoppa testet.

Testa verifieringsuttryck med hjälp av en fråga

Obs!   Du kan också testa verifieringsuttrycket genom att skriva en fråga som söker efter poster som inte följer verifieringsuttrycket. Resultatet från en sådan fråga visar exakt vilka poster som inte uppfyller kraven i verifieringsuttrycket. Om du till exempel anger egenskapen Obligatoriskt till Ja eller Är Icke Null söker du efter fält som när Null.

  1. Klicka på Frågedesign i gruppen Annat på fliken Skapa.

    Bild av menyfliksområdet i Access

    En ny fråga öppnas i designvyn och dialogrutan Visa tabell visas.

  2. Markera den eller de tabeller i dialogrutan Visa tabell som du vill använda i frågan, klicka på Lägg till så att de läggs till i frågan och klicka sedan på Stäng.

    De valda tabellerna visas som fönster i frågedesignerns övre del.

  3. Dubbelklicka på fälten i respektive tabell som du vill ha med i frågan.

    eller

    Dra fälten från tabellen och släpp dem i en tom cell i raden Fält i rutnätets nedre del.

    Se till att du lägger till fältet som innehåller verifieringsuttrycket.

  4. Skriv det motsatta verifieringsuttrycket i cellen Villkor för cellen som innehåller verifieringsuttrycket.

    Om du till exempel använder MELLAN 100 OCH 1000, skriver du <100 ELLER >1000.

  5. Klicka på Kör i gruppen Resultat på fliken Design.

Överst på sidan

Verifiera data vid registrering i formulär

Det enklaste och snabbaste sättet att tillämpa ett verifieringsuttryck på ett formulär är att först lägga till verifieringsuttrycket i det underliggande tabellfältet och sedan använda verktyget som skapar formulär automatiskt. I gruppen Formulär på fliken Skapa kan du till exempel välja att automatiskt skapa ett enkelt formulär, ett delat formulär eller ett formulär med flera objekt. När du använder något av dessa verktyg, ärver kontrollerna i formuläret egenskaperna från den underliggande tabellen, bland annat verifieringsuttrycket och verifieringstext.

Du kan också tillämpa ett verifieringsuttryck på en formulärkontroll genom att öppna formuläret i designvyn och lägga till ett verifieringsuttryck i egenskapen Verifieringsuttryck och meddelandetexten i egenskapen Verifieringstext för kontrollen. Du kan lägga till verifieringsuttryck för vissa, men inte alla, formulärkontroller. Det enklaste sättet att ta reda på om du kan lägga till ett verifieringsuttryck för en kontroll är att öppna formuläret i designvyn och följa anvisningarna i det här avsnittet.

Kom ihåg att en kontroll kan ha ett annat verifieringsuttryck än tabellfältet som kontrollen är bunden till. När en konflikt uppstår mellan verifieringsuttrycken, gäller det verifieringsuttryck som har definierats för tabellfältet. Kom också ihåg att verifieringsuttryck i kontroller och tabellfält kan ta ut varandra och därför hindra dig från att registrera data över huvud taget. Anta att du tillämpar följande verifieringsuttryck på ett datumfält i en tabell:

<#2007-01-01#

Men sedan tillämpar du det här verifieringsuttrycket på formulärkontrollen som är bunden till tabellfältet:

>=#2007-01-01#

Tabellfältet kräver att värden som infaller före 2007 registreras, men formulärkontrollen tvingar dig att ange datum som infaller efter det året. Då går det inte att ange något alls. Om du försöker att ange data i en sådan situation får du meddelanden om att du måste skriva datum både före och efter de datum som anges i verifieringsuttrycken, och hamnar i en ändlös slinga.

I följande anvisningar förklaras hur du lägger till verifieringsuttryck för kontroller, och hur du låser kontrollerna och förhindrar användarna från att ändra data.

Skapa ett verifieringsuttryck

  1. Högerklicka i navigeringsfönstret på formuläret som du vill ändra och klicka sedan på Design.

  2. Högerklicka på kontrollen som du vill ändra och klicka på Egenskaper så att kontrollens egenskapslista öppnas.

  3. Klicka på fliken Alla och ange sedan ett verifieringsuttryck i egenskapsrutan Verifieringsuttryck.

    eller

    Starta uttrycksverktyget genom att klicka på Bild av knapp bredvid och skapa uttrycket.

    Mer information om hur du använder uttrycksverktyget finns i artikeln Skapa ett uttryck.

  4. Skriv ett meddelande i egenskapsrutan Verifieringstext.

  5. Spara ändringarna.

Låsa en kontroll

  1. Följ steg 1-2 i föregående avsnitt för att öppna egenskapslistan för kontrollen som du vill låsa.

  2. Klicka på fliken Alla, leta reda på egenskapsrutorna Aktiverad och Låst och gör sedan något av följande:

    • Om du vill inaktivera kontrollen (göra den nedtonad och så att den inte kan markeras) anger du egenskapen Aktiverad till Nej.

    • Ange Ja för egenskapen Låst om användarna ska kunna läsa data men inte ändra dem. Om du anger Nej för egenskapen Aktiverad och Ja för egenskapen Låst blir kontrollen inte nedtonad, men den går ändå inte att markera.

Överst på sidan

Verifiera data vid import

När du lägger till verifieringsuttryck i en tabell och sedan importerar data till den tabellen, tillämpas verifieringsuttrycken på de data som importeras. Samma regel gäller när du länkar till data.

Mer information om hur du importerar eller länkar till data finns i följande artiklar:

Överst på sidan

Referens till verifieringsuttryck

I tabellen nedan finns referensinformation för verifieringsuttryck, bland annat syntaxen som de vanligaste verifieringsuttrycken använder, länkar till information om hur du använder jokertecken i verifieringsuttrycken och exempel som du kan anpassa efter egna data.

Exempel på verifieringsuttryck

I tabellen nedan finns exempel på verifieringsuttryck på fält- och postnivå samt förklarande verifieringstext. Du kan anpassa dessa exempel med eget innehåll.

Verifieringsuttryck

Verifieringstext

<>0

Skriv ett annat värde än noll.

>=0

Värdet måste vara noll eller större.

eller

Du måste ange ett positivt tal.

0 ELLER >100

Värdet måste antingen vara 0 eller större än 100.

MELLAN 0 OCH 1

Skriv ett värde med procenttecken. (För användning med fält där talvärden lagras som procent).

<#2007-01-01#

Skriv ett datum före 2007.

>=#2007-01-01# OCH <#2008-01-01#

Datumet måste infalla under 2007.

<Datum()

Födelsedatumet kan inte infalla i framtiden.

JmfStr(Versaler([Efternamn]),
[Efternamn];0) = 0

Texten i ett fält med namnet Efternamn måste vara i versaler.

>=Heltal(Nu())

Skriv dagens datum.

M ELLER K

Skriv M för man eller K för kvinna.

SOM"[A-Z]*@[A-Z].com" ELLER "[A-Z]*@[A-Z].net" ELLER "[A-Z]*@[A-Z].org"

Skriv en giltig .com-, .net- eller .org-e-postadress.

[ObligatorisktDatum]<=[Orderdatum]+30

Ange ett obligatoriskt datum som infaller inom 30 dagar efter orderdatumet.

[Slutdatum]>=[Startdatum]

Skriv ett slutdatum som infaller på eller efter startdatumet.

Syntax för vanliga verifieringsuttryck

Uttrycken i verifieringsuttrycken använder inte någon speciell syntax. I det här avsnittet beskrivs syntaxen till några av de vanligaste typerna av verifieringsuttryck. Uttryck och funktioner kan vara väldigt komplicerade, och någon mer ingående beskrivning finns inte i det här avsnittet.

Mer information om hur du skapar uttryck finns i artikeln Skapa ett uttryck. Mer information om funktioner finns i artikeln Funktioner (ordnade efter kategori).

Ha följande regler i åtanke när du skapar uttryck:

  • Omslut namn på tabellfält med hakparentes, så här: [ObligatorisktDatum]<=[Orderdatum]+30.

  • Omslut datum med nummertecken (#), så här: <#2007-01-01#

  • Omslut textvärden med citattecken, så här: I ("Tokyo","Paris","Moskva"). Observera att du avgränsar elementen med kommatecken och placerar listor inom parentes.

Förutom dessa regler innehåller följande tabell vanliga aritmetiska operatorer och exempel på hur du kan använda dem.

Operator

Funktion

Exempel

ICKE

Söker efter omvända värden. Använd denna före jämförelseoperatorer utom Är inte Null.

ICKE> 10 (detsamma som <=10).

I

Söker efter värden som är lika med befintliga värden i en lista. Jämförelsevärdet måste vara en kommaavgränsad lista inom parentes.

I ("Tokyo","Paris","Moskva")

MELLAN

Söker efter ett intervall med värden. Du måste använda två jämförelsevärden – låg och hög – och avgränsa dessa värden med OCH.

MELLAN 100 OCH 1000 (detsamma som >=100 OCH <=1000)

SOM

Matchar mönstersträngar i text- och PM-fält.

SOM "Geo*"

ÄR INTE NULL

Tvingar användarna att ange värden i fältet. Detta är detsamma som att ange egenskapen Obligatoriskt till Ja. När du aktiverar egenskapen Obligatoriskt och användaren inte anger något värde, kan emellertid ett användarovänligt felmeddelande visas. Databasen är vanligtvis enklare att använda om du använder ÄR INTE NULL och skriver ett användarvänligare meddelande i egenskapen Verifieringstext.

ÄR INTE NULL

OCH

Anger att alla data som du anger måste vara giltiga eller ligga inom ett intervall som du anger.

>= #2007-01-01# OCH <=#2008-06-03#

Obs!   Du kan också använda OCH när du kombinerar verifieringsuttryck. Exempel: ICKE "UK" OCH SOM "U*".

ELLER

Anger att en eller flera uppgifter kan vara giltiga.

Januari ELLER Februari

<

Mindre än.

<=

Mindre än eller lika med.

>

Större än.

>=

Större än eller lika med.

=

Lika med.

<>

Inte lika med.

Använda jokertecken i verifieringsuttryck

Du kan använda de jokertecken som finns i Access i verifieringsuttrycken. Det går att använda två typer av jokertecken i Access. Det beror på att det finns två standarder för Structured Query Language (SQL), det språk som används för att skapa och hantera databaser: ANSI-89 och ANSI-92. I dessa standarder används olika uppsättningar jokertecken.

Alla ACCDB- och MDB-filer använder som standard ANSI-89, medan Access-projekt använder ANSI-92. I ett Access-projekt finns tabellerna i databasen på en dator som kör Microsoft SQL Server, medan formulär, rapporter och andra objekt finns på andra datorer. Du kan byta ANSI-standard för ACCDB- och MDB-filer till ANSI-92 om du vill.

Mer information om hur du använder jokertecken och ANSI-standarder för SQL finns i artikeln Referens till jokertecken i Access.

Överst på sidan

Gäller för: Access 2007



Hade du nytta av den här informationen?

Ja Nej

Hur kan vi förbättra den?

255 återstående tecken

För att skydda din integritet bör du inte ange någon kontaktinformation i feedbacken. Granska våra sekretesspolicy.

Tack för din feedback!

Supportresurser

Ändra språk