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. Der findes tre typer valideringsregler i Access:

  • Feltvalideringsregel   Du kan bruge en valideringsregel til at angive et kriterium, som alle feltværdier skal opfylde for at være gyldige. Du kan f.eks. have et datofelt med en valideringsregel, som sikrer, at der ikke angives datoer, der ligger i fortiden.

  • Postvalideringsregel   Du kan bruge en valideringsregel til at angive en betingelse, som alle poster skal opfylde. Det kan f.eks. være en post med to datofelter, hvor det ene felt altid skal indeholde en dato, der er før den anden, f.eks. Startdato og Slutdato.

  • 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.

    Bemærk: Denne artikel gælder ikke for Access-webapps – den type database, du kan designe med Access og udgive online.

I denne artikel

Oversigt

Typer af valideringsregler

Hvor kan du bruge valideringsregler?

Hvad kan en valideringsregel indeholde?

Føje en valideringsregel til en tabel

Oprette en feltvalideringsregel

Oprette en meddelelse, der skal vises for ugyldigt feltinput

Oprette en postvalideringsregel

Oprette en meddelelse, der skal vises for ugyldigt postinput

Teste eksisterende data mod en ny valideringsregel

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

Oprette en valideringsregel for et kontrolelement

Referenceoplysninger til valideringsregler

Eksempler på valideringsregler og valideringsmeddelelser

Syntakseksempler for almindelige operatorer til valideringsregler

Brug af jokertegn i valideringsregler

Oversigt

I denne artikel beskrives det, hvordan du kan bruge valideringsregler og valideringsmeddelelser i tabelfelter og kontrolelementer i formularer. En valideringsregel er en metode til at begrænse input i et tabelfelt eller et kontrolelement (f.eks. et tekstfelt) i en formular. Med valideringsmeddelelsen kan du vise en meddelelse til de brugere, der angiver ugyldige inputdata.

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   Alle tabelfelter har en datatype, der begrænser det, som brugeren kan angive. Et dato- og klokkeslætsfelt accepterer f.eks. kun datoer og klokkeslæt, et valutafelt accepterer kun pengeværdier osv.

  • Feltegenskaber   Nogle feltegenskaber begrænser inputtet. Egenskaben Feltstørrelse begrænser f.eks. inputtet i et felt til et bestemt antal tegn.

    Du kan også bruge egenskaben Valideringsregel til at kræve bestemte værdier, og egenskaben Valideringsmeddelelse giver brugerne besked om eventuelle fejl. Hvis du f.eks. angiver en regel som >100 And <1000 i egenskaben Valideringsregel, kan brugerne kun angive værdier mellem 100 og 1.000. En regel som [Slutdato]>=[Startdato] sikrer, at brugerne kun kan angive en slutdato, som er den samme som eller senere end startdatoen. Hvis du angiver tekster som "Angiv værdier mellem 100 og 1.000" eller "Angiv en slutdato, der er samme dato eller senere end startdatoen" i egenskaben Valideringsmeddelelse, kan brugerne se, hvis de har skrevet forkert, og hvad de skal gøre for at rette fejlen.

  • Inputmasker   Du kan også bruge inputmasker til at validere data. En inputmaske tvinger brugerne til at angive værdier på en bestemt måde, f.eks. 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   En feltvalideringsregel bruges til at kontrollere den værdi, der er angivet i et felt, når feltet forlades. Lad os f.eks. antage, at du anvender et datofelt og angiver >=#01/01/2010# i egenskaben Valideringsregel for feltet. Denne regel kræver nu, at brugerne skal angive en dato, der er identisk med eller senere end 1. januar 2010. Hvis der angives en tidligere dato end 2010, forhindrer Access, at fokus flyttes til et andet felt, før fejlen er rettet.

  • Postvalideringsregler   Du kan bruge en postvalideringsregel til kontrol af, hvornår du kan gemme en post (en række i en tabel). Til forskel fra feltvalidering, refererer en postvalideringsregel til andre felter i den samme tabel. Du kan oprette postvalideringsregler, når du har brug for at kontrollere værdierne i et felt mod værdierne i et andet felt. Hvis din virksomhed f.eks. kræver, at du sender produkter inden for 30 dage, og du ikke sender dem til tiden, skal du refundere en del af købsprisen til kunden. Du kan definere en postvalideringsregel som [KrævetDato]<=[OrdreDato]+30 for at sikre, at der ikke angives en forsendelsesdato (værdien i feltet KrævetDato, som er 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 – dvs. funktioner, der returnerer en enkelt værdi. Du kan bruge et udtryk til at udføre beregninger, manipulere tegn eller kontrollere data. I forbindelse med valideringsregler anvendes udtryk primært til at kontrollere data. Et udtryk kan f.eks. bruges til at søge efter én af værdierne i en serie af værdier, som f.eks. "Tokyo" Or "Moskva" Or "Paris" Or "Helsinki". Udtryk kan også udføre matematiske beregninger. Udtrykket <100 tvinger f.eks. brugerne til at angive værdier, der er mindre end 100, og udtrykket ([Ordredato] - [Forsendelsesdato]) beregner, hvor mange dage der er gået fra ordretidspunktet til afsendelsestidspunktet.

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 inputtet i et felt, og den anvendes, når fokus flyttes fra feltet. En postvalideringsregel sammenligner som regel 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. Angiv en relevant meddelelse. Hvis valideringsreglen f.eks. er >10, kan du angivemeddelelsen "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. Angiv en relevant 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.

Bemærk:  Følgende procedure fungerer kun med tabeller i skrivebordsdatabaser.

  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

Angiv 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 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.

×