Begræns datainput ved hjælp af valideringsregler

Begræns datainput ved hjælp af valideringsregler

Du kan validere de angivne data i Access-skrivebordsdatabaser ved hjælp af valideringsregler. Du kan bruge udtryksgeneratoren til at formatere reglen korrekt. Valideringsregler kan angives i enten tabeldesign- eller tabeldataarkvisning. Der findes tre typer valideringsregler i Access:

1. Feltvalideringsregel   Du kan bruge en feltvalideringsregel til at angive et kriterium, som gyldige feltværdier skal opfylde. Det bør ikke være nødvendigt at angive det aktuelle felt som en del af reglen, medmindre du bruger feltet i en funktion.  Begrænsninger for typer af tegn i et felt kan være nemmere med en inputmaske. Et datofelt kan f.eks. have en valideringsregel, som ikke tillader værdier i fortiden.

Hurtig eksempler:

Tillad ikke datoværdier i fortiden: >=Date()

Generelt accepteret mailformat: Is Null OR ((Like "*?@?*.?*") AND (Not Like "*[ ,;]*"))

Antal mindre end eller lig med fem: < = 5

Valutafelt må ikke være negativt: > = 0

Begræns tegnlængde i strengen: Len([StrengFeltNavn])<100

Feltvalideringsregel vist i Access-tabeldesigner

2. Feltvalideringsregel   Du kan bruge en feltvalideringsregel til at angive et kriterium, som gyldige feltværdier skal opfylde. Du kan sammenligne værdier på tværs af forskellige felter ved hjælp af en postvalideringsregel. F.eks, en post med to felter kan medføre, at værdierne i et felt altid foran værdierne i et andet felt (f.eks. startdato er før EndDate).

Hurtig eksempler:

Sørg for, at slutdatoen ikke kommer før startdatoen: [Slutdato]>=[Startdato]

Angiv en leveringsdato, der højst er 30 dage efter ordredatoen: [Leveringsdato]<=[Ordredato]+30

En tabelvalideringsregel i Access-tabeldesigner.

3. Validering på en formular   Du kan bruge egenskaben Valideringsregel for et kontrolelement i en formular til at angive et kriterium, som alle inputværdier i kontrolelementet skal opfylde. Egenskaben Valideringsregel for kontrolelementer fungerer på samme måde som en feltvalideringsregel. Du bruger typisk en formularvalideringsregel i stedet for en feltvalideringsregel, hvis reglen er specifik for kun den pågældende formular og ikke for tabellen, uanset hvor den blev brugt.

I denne artikel

Oversigt

Denne artikel forklarer, hvordan du bruger valideringsregler og Valideringsmeddelelse felter og kontrolelementer. En valideringsregel er én måde at begrænse input i et tabelfelt eller kontrolelement (f.eks et tekstfelt) i en formular. Valideringsmeddelelse giver du en meddelelse, kan brugere indtaste data, der ikke er gyldig.

Når dataene er angivet, kontrolleres det, om de bryder en valideringsregel. Hvis det er tilfældet, bliver inputtet ikke accepteret, og der vises en meddelelse.

Der findes flere måder i Access, hvorpå du kan begrænse input:

  • Datatyper   Hver tabel indeholder en datatype, der begrænser, hvad brugerne kan angive. F.eks, et dato/klokkeslæt-felt accepterer kun datoer og klokkeslæt, et valutafelt accepterer kun Monetære data, og så videre.

  • 2. FeltegenskaberNogle af feltegenskaberne Begræns datainput. Egenskaben Feltstørrelse begrænser f.eks. inputtet i et felt til et bestemt antal tegn.

    Du kan også bruge den valideringsregel at kræve bestemte værdier, og Valideringsmeddelelse at advare brugerne om fejl. F.eks, f.eks angive en regel > 100 og < 1000 i den valideringsregel egenskaben tvinger værdier mellem 100 og 1.000. Reglen [slutdato] > = [StartDate] angiver en slutdato, der forekommer på eller efter startdato. At skrive tekst, f.eks. "Angiv værdier mellem 100 og 1.000" eller "Angiv en slutdato på eller efter startdatoen" i den Valideringsmeddelelse egenskaben fortæller brugerne, når de har en fejl, og hvordan du kan rette fejlen.

  • Om inputmaskerDu kan bruge en inputmaske til at validere data brugere at indtaste værdierne i en bestemt måde. En inputmaske kan f.eks, tvinge brugere til at angive datoer i europæisk format, f.eks 2007.04.14.

Du kan bruge disse metoder til at validere data alene eller i kombination med hinanden. Datatyper er ikke valgfri, og de giver den mest grundlæggende type datavalidering.

Du kan finde oplysninger om datatyper, feltstørrelser og inputmasker i artiklen Introduktion til datatyper og feltegenskaber.

Typer af valideringsregler

Du kan oprette to grundlæggende typer valideringsregler:

  • Feltvalideringsregler   Brug en feltvalideringsregel til den værdi, du angiver i et felt, når du forlader feltet. Antag f.eks., du har et dato-felt, og du > = #01-01-2010 # i den valideringsregel for det pågældende felt. Reglen kræver, at brugerne skal angive datoer på eller efter 1. januar 2010. Hvis du angiver en dato, der ligger før 2010, og prøv derefter at flytte fokus til et andet felt, kan Access forhindrer dig i at forlade det aktuelle felt, indtil du kan løse problemet.

  • Feltvalideringsregler   Bruge en postvalideringsregel til at styre, hvornår du kan gemme en post (en række i en tabel). I modsætning til en feltvalideringsregel henviser en postvalideringsregel til andre felter i samme tabel. Du kan oprette postvalideringsregler, når du vil kontrollere værdierne i et felt med værdierne i en anden. Antag f.eks, din virksomhed kræver, at du sender produkter inden for 30 dage, og, hvis du ikke sender inden for dette tidsrum, skal du refunderet en del af købsprisen til din kunde. Du kan f.eks angive en postvalideringsregel [leveringsdato] < = [Ordredato] + 30 for at sikre, at en person ikke angiver et fartøj dato (værdien i feltet Leveringsdato) for langt ude i fremtiden.

Hvis du synes, at syntaksen for valideringsregler ser kryptisk ud, skal du se afsnittet Hvad kan en valideringsregel indeholde?, som indeholder en beskrivelse af syntaksen og nogle eksempler på valideringsregler.

Hvor kan du bruge valideringsregler?

Du kan angive valideringsregler for tabelfelter og kontrolelementer i formularer. Hvis du angiver regler for tabeller, træder disse regler i kraft, når du importerer data. Hvis du vil føje valideringsregler til en tabel, skal du åbne tabellen og bruge kommandoerne under fanen Felter på båndet. Hvis du vil føje valideringsregler til en formular, skal du åbne formularen i layoutvisning og føje reglerne til egenskaberne for de enkelte kontrolelementer.

I afsnittet Føje en valideringsregel til en tabel beskrives det, hvordan du føjer valideringsregler til tabelfelter. I afsnittet Føje en valideringsregel til et kontrolelement på en formular, senere i denne artikel, forklares det, hvordan du føjer regler til egenskaberne for individuelle kontrolelementer.

Hvad kan en valideringsregel indeholde?

Valideringsregler kan indeholde udtryk-funktioner, der returnerer en enkelt værdi. Udtryk bruges mange steder til at udføre beregninger, redigere tegn eller teste data. En regel valideringsudtryk tester data. F.eks, et udtryk kan søge efter en af en række værdier, f.eks "Tokyo" eller "Moskva" eller "Paris" eller "Helsinki". Udtryk kan også udføre matematiske operationer. F.eks, udtrykket < 100 angiver værdier, der er mindre end 100. Udtrykket ([Ordredato] - [Forsendelsesdato]) beregner antallet af dage, der er gået mellem det tidspunkt, hvor en ordre, der blev placeret og den sendes.

Du kan få mere at vide om udtryk i artiklen Opret et udtryk.

Tilbage til toppen

Føje en valideringsregel til en tabel

Du kan tilføje en feltvalideringsregel og/eller en postvalideringsregel. En feltvalideringsregel kontrollerer input for et felt, og der anvendes, når fokus flyttes til feltet. En feltvalideringsregel kontrollerer input for et felt, og der anvendes, når fokus flyttes til feltet. Som regel sammenligner en postvalideringsregel værdierne i to eller flere felter.

Bemærkninger!: Følgende felttyper understøtter ikke valideringsregler:

  • Autonummerering

  • OLE-objekt

  • Vedhæftet fil

  • Replikerings-id

Oprette en feltvalideringsregel

  1. Vælg det felt, du vil validere.

  2. Klik på Validering i gruppen Feltvalidering under fanen Felter, og klik derefter på Feltvalideringsregel.

  3. Brug Udtryksgenerator til at oprette reglen. Du kan finde oplysninger om brug af Udtryksgenerator i artiklen Brug af Udtryksgenerator.

Oprette en meddelelse, der skal vises for ugyldigt feltinput

  1. Vælg det felt, hvor der skal vises en meddelelse for ugyldigt input. Feltet skal allerede have en valideringsregel.

  2. Klik på Validering i gruppen Feltvalidering under fanen Felter, og klik derefter på Feltvalideringsmeddelelse.

  3. Skriv en meddelelse. Hvis valideringsreglen f.eks. er >10, kan du angive meddelelsen "Angiv en værdi, der er mindre end 10".

Du kan se eksempler på feltvalideringsregler og meddelelser i afsnittet Referenceoplysninger til valideringsregler.

Oprette en postvalideringsregel

  1. Åbn den tabel, du vil validere poster for.

  2. Klik på Validering i gruppen Feltvalidering under fanen Felter, og klik derefter på Postvalideringsregel.

  3. Brug Udtryksgenerator til at oprette reglen. Du kan finde oplysninger om brug af Udtryksgenerator i artiklen Brug af Udtryksgenerator.

Oprette en meddelelse, der skal vises for ugyldigt postinput

  1. Åbn den tabel, hvor der skal vises en meddelelse for ugyldigt input. Tabellen skal allerede have en postvalideringsregel.

  2. Klik på Validering i gruppen Feltvalidering under fanen Felter, og klik derefter på Postvalideringsmeddelelse.

  3. Skriv en meddelelse. Hvis valideringsreglen f.eks. er [Startdato]<[Slutdato], kanmeddelelsen være "Startdato skal være før Slutdato".

Tilbage til toppen

Teste eksisterende data mod en ny valideringsregel

Hvis du føjer en valideringsregel til en eksisterende tabel, kan du teste reglen for at se, om nogle af de eksisterende data er ugyldige.

  1. Åbn den tabel, du vil teste, i designvisning.

    Klik på Test valideringsregler i gruppen Værktøjer under fanen Design.

  2. Klik på Ja for at lukke meddelelsen, og start testproceduren.

  3. Klik på Ja, hvis du bliver bedt om at gemme tabellen.

  4. Der vises muligvis en række andre meddelelser, når du fortsætter. Læs instruktionerne i hver meddelelse, og klik derefter på Ja eller Nej for at gennemføre eller afbryde testen.

Tilbage til toppen

Føj en valideringsregel til et kontrolelement på en formular

Du kan bruge egenskaberne Valideringsregel og Valideringsmeddelelse for et kontrolelement på en formular til at validere de data, der angives i kontrolelementet, og til at hjælpe de brugere, der angiver ugyldigt input.

Tip!:  Hvis du opretter en formular automatisk fra en tabel ved at bruge en af formularkommandoerne på båndet, nedarves al validering for felterne i den underliggende tabel af de tilsvarende kontrolelementer på formularen.

En kontrolelement kan have en anden valideringsregel end det tabelfelt, som kontrolelementet er bundet til. Dette er praktisk, hvis formularen skal være mere begrænsende end tabellen. Formularreglen anvendes, og derefter anvendes tabelreglen. Hvis tabellen er mere begrænsende end formularen, har reglen for tabelfeltet forrang. Hvis reglerne udelukker hinanden, kan der slet ikke angives data.

Lad os f.eks. antage, at du tildeler følgende regel til et datafelt i en tabel:

<#01/01/2010#

Men derefter tildeler du følgende regel til det kontrolelement på formularen, som er bundet til datofeltet:

>=#01/01/2010#

Datofeltet kræver nu værdier, der er tidligere end år 2010, men kontrolelementet på formularen kræver datoer med det årstal eller senere, og der kan derfor slet ikke angives nogen data.

Oprette en valideringsregel for et kontrolelement

  1. Højreklik på den formular, du vil ændre, og klik derefter på Layoutvisning.

  2. Højreklik på det kontrolelement, du vil ændre, og klik derefter på Egenskaber for at åbne kontrolelementets egenskabsark.

  3. Klik på fanen Alle, og angiv derefter valideringsreglen i egenskabsfeltet Valideringsregel.

    Tip!:  Klik på knappen Byg for at starte Udtryksgenerator.

    Du kan finde flere oplysninger om brug af Udtryksgenerator i artiklen Brug af Udtryksgenerator.

  4. Skriv en meddelelse i egenskabsfeltet Valideringsmeddelelse.

Tilbage til toppen

Referenceoplysninger til valideringsregler

Valideringsregler bruger Access-syntaksen for udtryk. Du kan finde flere oplysninger om udtryk i artiklen Introduktion til udtryk.

Eksempler på valideringsregler og valideringsmeddelelser

Valideringsregel

Valideringsmeddelelse

<>0

Angiv en værdi, der er forskellig fra nul.

>=0

Værdien skal være lig med eller større end nul.

Eller

Du skal angive et positivt tal.

0 or >100

Værdien skal enten være 0 eller større end 100.

BETWEEN 0 AND 1

Indtast en værdi med et procenttegn. (bruges til et felt, der gemmer talværdier som procenter).

<#01/01/2007#

Angiv en dato, der ligger før 2007.

>=#01/01/2007# AND <#01/01/2008#

Datoen skal være i 2007.

<Date()

Fødselsdatoen kan ikke være en fremtidig dato.

StrComp(UCase([Efternavn]),
[Efternavn],0) = 0

Dataene i et felt med navnet Efternavn skal skrives med store bogstaver.

>=Int(Now())

Angiv dags dato.

M Or K

Angiv M for mand eller K for kvinde.

LIKE "[A-Z]*@[A-Z].com" OR "[A-Z]*@[A-Z].net" OR "[A-Z]*@[A-Z].org"

Angiv en gyldig mailadresse med domæneendelsen .com, .net eller .org.

[Leveringsdato]<=[Ordredato]+30

Angiv en leveringsdato, der højst er 30 dage efter ordredatoen.

[Slutdato]>=[Startdato]

Angiv en slutdato, der er identisk med eller senere end startdatoen.

Syntakseksempler for almindelige operatorer til valideringsregler

Operator

Funktion

Eksempel

NOT

Undersøger, om der findes modsatte værdier. Skal bruges inden sammenligningsoperatorerne, bortset fra IS NOT NULL.

NOT > 10 (identisk med <=10).

IN

Undersøger, om der findes værdier, som svarer til elementerne på listen. En sammenligningsværdi skal være en kommasepareret liste, der er indsat i parenteser.

IN ("Tokyo","Paris","Moskva")

BETWEEN

Undersøger, om der findes værdier inden for et værdiinterval. Du skal bruge to sammenligningsværdier – den laveste og højeste værdi – og adskille disse værdier med en AND-separator.

BETWEEN 100 AND 1000 (identisk med >=100 AND <=1000)

LIKE

Finder tilsvarende mønsterstrenge i tekst- og notatfelter.

LIKE "Geo*"

IS NOT NULL

Tvinger brugerne til at angive værdier i feltet. Svarer til at angive feltegenskaben Obligatorisk til Ja. Hvis egenskaben Obligatorisk aktiveres, viser Access imidlertid en noget uvenlig fejlmeddelelse, når en bruger undlader at angive en værdi. Din database er typisk nemmere at bruge, hvis du bruger operatoren IS NOT NULL og skriver en venlig meddelelse i egenskabsfeltet Valideringsmeddelelse.

IS NOT NULL

AND

Angiver, at alle dele af valideringsreglen skal være sande.

>= #01/01/2007# AND <=#03/06/2008#

Bemærk!: Du kan også bruge AND til at kombinere valideringsregler, f.eks. NOT "UK" AND LIKE "U*".

OR

Angiver, at alle, men ikke alle, dele af valideringsreglen skal være sande.

Januar OR Februar

<

Mindre end

<=

Mindre end eller lig med

>

Større end

>=

Større end eller lig med

=

Lig med.

<>

Forskellig fra

Brug af jokertegn i valideringsregler

Du kan bruge jokertegn i valideringsreglerne. Husk på, at Access understøtter to sæt jokertegn: ANSI-89 og ANSI-92. Disse standarder bruger forskellige jokertegn.

Som standard anvender alle .accdb- og .mdb-filer ANSI-89-standarden.

Du kan ændre ANSI-standarden for en database til ANSI-92 ved at bruge følgende procedure:

  1. Klik på Indstillinger under fanen Filer.

  2. Klik på Objektdesignere i dialogboksen Access-indstillinger.

  3. Vælg Denne database under SQL Server-kompatibel syntaks (ANSI-92) i Forespørgselsdesign.

Du kan finde flere oplysninger om brug af jokertegn og ANSI-standarder for SQL i artiklen Oversigt over jokertegn i Access.

Tilbage til toppen

Udvid dine Office-færdigheder
Gå på opdagelse i kurser
Få nye funktioner først
Bliv Office Insider

Var disse oplysninger nyttige?

Tak for din feedback!

Tak for din feedback! Det lyder, som om det vil kunne hjælpe, hvis du bliver sat i forbindelse med en af vores Office-supportteknikere.

×