Opret en formular, der indeholder en underformular (en en-til-mange-formular)
Gælder for
Access til Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

Når du arbejder med relationsdata (relaterede data, der er gemt i separate tabeller) i Access, skal du ofte få vist flere tabeller eller forespørgsler i den samme formular. Det kan f.eks. være, at du vil have vist kundedata fra én tabel og oplysninger om kundeordrer fra en anden tabel på samme tid. Underformularer er et praktisk værktøj til at gøre dette, og Access indeholder flere måder, du hurtigt kan oprette underformularer på.

Hvad vil du foretage dig?

Få mere at vide om underformularer

En underformular er en formular, der er indsat i en anden formular. Den primære formular hedder hovedformularen, og formularen som er en del af formularen, hedder underformularen. Kombinationen formular/underformular kaldes også en hierarkisk formular, en hoved-/detaljeformular eller en overordnet/underordnet formular.

Underformularer er især effektive, når du vil vise data fra tabeller eller forespørgsler, der har en en til mange-relation. En en til mange-relation er en tilknytning mellem to tabeller, hvor den primære nøgleværdi for hver post i den primære tabel svarer til værdien i det eller de tilsvarende felter for mange poster i den relaterede tabel. Du kan f.eks. oprette en formular, der viser medarbejderdata og indeholder en underformular, der viser hver medarbejders ordrer. Dataene i tabellen Medarbejdere er en-siden af relationen. Dataene i tabellen Ordrer er relationens mange-side – hver medarbejder kan have mere end én ordre.

En formular, der indeholder en underformular

1. I hovedformularen vises data fra "en"-siden af relationen.

2. I underformularen vises data fra "mange"-siden af relationen.

Hovedformularen og underformularen i denne type formular er sammenkædet, så underformularen kun viser poster, der er relateret til den aktuelle post i hovedformularen. Når hovedformularen f.eks. viser Nancy Freehafers oplysninger, viser underformularen kun hendes ordrer. Hvis formularen og underformularen ikke er kædet sammen, viser underformularen alle ordrerne, ikke kun Nancys.

I følgende tabel defineres nogle af de udtryk, der vedrører underformularer. Access håndterer de fleste oplysninger, hvis du bruger fremgangsmåderne i denne artikel, men det er nyttigt at vide, hvad der sker i baggrunden, hvis du har brug for at foretage ændringer senere.

Begreb

Definition

Underformularkontrolelement

Det kontrolelement, der integrerer en formular i en formular. Du kan betragte underformularkontrolelementet som en "visning" af et andet objekt i databasen, uanset om det er en anden formular, en tabel eller en forespørgsel. Underformularkontrolelementet har egenskaber, som du kan bruge til at sammenkæde de data, der er vist i kontrolelementet, til dataene i hovedformularen.

Egenskaben Kildeobjekt

Den egenskab i underformularkontrolelementet, der bestemmer, hvilket objekt der vises i kontrolelementet.

Dataark

En simpel visning af data i rækker og kolonner, der minder om et regneark. Underformularkontrolelementet viser et dataark, når dets kildeobjekt er en tabel eller forespørgsel, eller når kildeobjektet er en formular, hvor egenskaben Standardvisning er indstillet til Dataark. I disse tilfælde kan underformularen omtales som et dataark eller et underdataark i stedet for en underformular.

Egenskaben UnderordnedeFelter

Den egenskab for underformularkontrolelementet, der angiver, hvilke felter i underformularen der sammenkæder underformularen med hovedformularen.

Egenskaben OverordnedeFelter

Den egenskab for underformularkontrolelementet, der angiver, hvilke felter i hovedformularen der sammenkæder hovedformularen med underformularen.

Bemærkninger!: 

  • Du opnår de bedste resultater, hvis du etablerer tabelrelationer, inden du følger procedurerne i denne artikel. Dette gør det muligt for Access automatisk at oprette kæderne mellem underformularer og hovedformularer. Hvis du vil have vist, tilføje eller ændre relationer mellem tabellerne i databasen, skal du klikke på Relationer i gruppen Relationer under fanen Databaseværktøjer.

  • Når et underformularkontrolelement har en formular som kildeobjekt, indeholder det de felter, du placerer i formularen, og det kan vises som en enkelt formular, en fortløbende formular eller et dataark. En fordel ved at basere en underformular på et formularobjekt er, at du kan føje beregnede felter til underformularen, f.eks . [Antal] * [Enhedspris].

  • Du kan indsætte et dataark eller en pivotvisning i en formular ved at oprette et underformularkontrolelement, hvis kildeobjekt er en tabel eller forespørgsel. Du kan finde flere oplysninger i afsnittet Føje relaterede data til en formular uden at oprette en underformular.

Toppen af siden

Oprette eller tilføje en underformular

Brug følgende tabel til at bestemme, hvilken procedure der er mest passende for din situation.

Scenario

Anbefalet procedure

Du vil have Access til at oprette både en hovedformular og en underformular og sammenkæde underformularen med hovedformularen.

Oprette en formular, der indeholder en underformular, ved hjælp af guiden Formular

Du vil bruge en eksisterende formular som hovedformular, men du vil have Access til at oprette en ny underformular og føje den til hovedformularen.

Føje en eller flere underformularer til en eksisterende formular ved hjælp af guiden Underformular

Du vil bruge en eksisterende formular som hovedformular, og du vil føje en eller flere eksisterende formularer til formularen som underformularer.

Oprette en underformular ved at trække én formular til en anden

Oprette en formular, der indeholder en underformular, ved hjælp af guiden Formular

Denne fremgangsmåde opretter en kombination af en ny formular og underformular ved hjælp af guiden Formular. Dette er også den hurtigste måde at komme i gang på, hvis du ikke allerede har oprettet de formularer, du skal bruge som hovedformular og underformular.

  1. Klik på Guiden Formular i gruppen Formularer på fanen Opret.

  2. Vælg en tabel eller forespørgsel på rullelisten Tabeller/forespørgsler på den første side i guiden. I dette eksempel vælger vi Tabel: Medarbejdere (en-siden af en-til-mange-relationen) for at oprette en medarbejderformular, der viser ordrer for hver medarbejder i en underformular.

    Bemærk!: Det er lige meget, hvilken tabel eller forespørgsel du vælger først.

  3. Dobbeltklik på de felter, du vil medtage fra denne tabel eller forespørgsel.

  4. På samme side i guiden skal du på rullelisten Tabeller/forespørgsler vælge en anden tabel eller forespørgsel på listen. I dette eksempel vælger vi tabellen Ordrer ("mange"-siden af en til mange-relationen).

  5. Dobbeltklik på de felter, du vil medtage fra denne tabel eller forespørgsel.

  6. Når du klikker på Næste, og det antages, at du har konfigureret relationerne korrekt, før du startede guiden, spørger guiden Hvordan vil du have vist dine data? – dvs. efter hvilken tabel eller forespørgsel. Vælg tabellen på en-siden af en til mange-relationen. I dette eksempel skal vi klikke på efter Medarbejdere for at oprette formularen Medarbejdere. Guiden viser et lille diagram af en formular. Siden skal ligne følgende illustration:

    Underformularsiden i guiden Formular

    Feltet i den nederste del af formulardiagrammet repræsenterer underformularen.

    Bemærk!: Hvis guiden ikke spørger Hvordan vil du have vist dine data?, betyder det, at Access ikke har registreret en en til mange-relation mellem de tabeller eller forespørgsler, du har valgt. Guiden fortsætter, men Access føjer ikke en underformular til formularen. Du kan eventuelt klikke på Annuller for at granske tabelrelationerne, inden du fortsætter.

  7. Vælg Formular med underformular(er) nederst i guiden, og klik derefter på Næste.

  8. På siden Hvilket layout skal underformularen have? skal du klikke på den layoutindstilling, du vil bruge, og derefter klikke på Næste. I begge layouttyper arrangeres underformulardataene i rækker og kolonner, men et tabellayout kan tilpasses på flere måder. Du kan føje farve, grafik og andre formateringselementer til en underformular i tabelform, hvorimod et dataark er mere kompakt ligesom dataarkvisningen af en tabel.

  9. På næste side i guiden skal du vælge en formateringstypografi til formularen, og derefter skal du klikke på Næste. Hvis du valgte Tabelformat på forrige side, anvendes den formateringstypografi, du vælger, også i underformularen.

  10. På den sidste side i guiden skal du skrive de ønskede titler til formularerne. Access navngiver formularerne baseret på de titler, du skriver, og navngiver underformularen baseret på den titel, du skriver for underformularen.

  11. Angiv, om du vil åbne formularen i formularvisning, så du kan se eller angive oplysninger, eller i designvisning, så du kan ændre designet, og klik derefter på Udfør.

    Access opretter to formularer – én for hovedformularen, der indeholder underformularkontrolelementet, og én for selve underformularen.

Toppen af siden

Føj en eller flere underformularer til en eksisterende formular ved hjælp af guiden Underformular

Brug denne procedure for at føje en eller flere underformularer til en eksisterende formular. For hver underformular kan du vælge at få Access oprette en ny formular eller bruge en eksisterende formular som underformular.

  1. Højreklik på den eksisterende formular i navigationsruden, og klik derefter på Designvisning.

  2. Klik på pil ned i gruppen Kontrolelementer under fanen Formulardesign for at få vist galleriet Kontrolelementer, og sørg for, at Brug kontrolelementguider er markeret.

  3. Klik på knappen Underformular/underrapport i gruppen Kontrolelementer under fanen Formulardesign.

  4. Klik på det sted i formularen, hvor underformularen skal placeres.

  5. Følg anvisningerne i guiden.

    Når du klikker på Udfør, føjer Access et underformularkontrolelement til formularen. Hvis du vælger at have Access oprette en ny formular til underformularen i stedet for at bruge en eksisterende formular, opretter Access det nye formularobjekt og føjer det til navigationsruden.

Oprette en underformular ved at trække én formular til en anden

Brug denne procedure, hvis du vil bruge en eksisterende formular som hovedformular, og du vil føje en eller flere eksisterende formularer til formularen som underformularer.

  1. Højreklik på den formular, du vil bruge som hovedformular, i navigationsruden, og klik derefter på Layoutvisning.

  2. Træk den formular, du vil bruge som underformular, fra navigationsruden til hovedformularen.

    Access føjer et underformularkontrolelement til hovedformularen og binder kontrolelementet til den formular, du har trukket fra navigationsruden. Access forsøger også at sammenkæde underformularen med hovedformularen baseret på de relationer, der er defineret i databasen.

  3. Gentag dette trin, hvis du vil føje flere underformularer til hovedformularen.

  4. Hvis du vil bekræfte, at sammenkædningen gik godt, skal du klikke på Vis i gruppen Visninger under fanen Startside, klikke på Formularvisning og derefter bruge postvælgeren i hovedformularen til at bladre gennem flere poster. Hvis underformularen filtreres korrekt for hver medarbejder, er proceduren fuldført.

Hvis den forrige test ikke virker, kunne Access ikke afgøre, hvordan underformularen skal sammenkædes med hovedformularen, og egenskaberne UnderordnedeFelter og OverordnedeFelter for underformularkontrolelementet er tomme. Du skal angive disse egenskaber manuelt på følgende måde:

  1. Højreklik på hovedformularen i navigationsruden, og klik derefter på Designvisning.

  2. Klik på underformularkontrolelementet for at markere det.

  3. Hvis opgaveruden Egenskabsark ikke vises, skal du trykke på F4 for at få den vist.

  4. Klik på fanen Data i på egenskabsarket.

  5. Klik på knappen Generér Knappen Generator ud for egenskabsfeltet UnderordnedeFelter .

    Dialogboksen Feltsammenkædning af underformular vises.

  6. Vælg de felter, du vil sammenkæde formularerne med, på rullelisterne Overordnede felter og Underordnede felter, og klik derefter på OK. Hvis du ikke er sikker på, hvilke felter du skal bruge, skal du klikke på Foreslå for at få Access prøve at bestemme felterne til sammenkædningen.

    Tip!: Hvis du ikke kan se det felt, du vil bruge til at sammenkæde formularerne, kan det være nødvendigt at redigere postkilden for hovedformularen eller den underordnede formular for at sikre, at sammenkædningsfeltet er i det. Hvis formularen f.eks. er baseret på en forespørgsel, skal du sørge for, at sammenkædningsfeltet findes i forespørgselsresultaterne.

  7. Gem hovedformularen, og skift til formularvisning for at undersøge, om formularen virker efter hensigten.

Åbne en underformular i et nyt vindue i designvisning

Hvis du vil foretage ændringer i designet af en underformular, mens du arbejder på dens hovedformular i designvisning, kan du åbne underformularen i et nyt vindue:

  1. Klik på underformularen for at markere den.

  2. Klik på Underformular i nyt vindue i gruppen Værktøjer under fanen Formulardesign.

Toppen af siden

Ændre standardvisningen for en underformular

Når du føjer en underformular til en formular, viser underformular-/underrapportkontrolelementet underformularen i overensstemmelse med egenskaben Standardvisning for underformularen. Denne egenskab kan indstilles til følgende værdier:

  • En post ad gangen.

  • Fortløbende formularer

  • Dataark

  • Delt formular

Når du opretter en underformular første gang, kan denne egenskab være indstillet til Fortløbende formularer eller Enkel formular. Hvis du indstiller egenskaben Standardvisning for en underformular til Dataark, vises underformularen som et dataark i hovedformularen.

Sådan indstiller du egenskaben Standardvisning for en underformular:

  1. Luk alle åbne objekter.

  2. I navigationsruden skal du højreklikke på underformularen og derefter klikke på Designvisning.

  3. Hvis egenskabsarket ikke vises korrekt, skal du trykke på F4 for at se det.

  4. Kontrollér, at Formular er markeret på rullelisten øverst i egenskabsarket.

  5. Indstil egenskaben Standardvisning under fanen Format på egenskabsarket til den visning, du vil bruge.

    Bemærk!: Hvis den visning, du vil bruge, ikke findes på listen, skal du kontrollere, at "Tillad... Egenskaben Vis" for visningen er indstillet til Ja. Hvis du f.eks. vil angive Dataark som standardvisning for formularen, skal du kontrollere, at egenskaben Tillad dataarkvisning er indstillet til Ja.

  6. Gem og luk underformularen, og åbn derefter hovedformularen for at kontrollere resultaterne.

Toppen af siden

Føj relaterede data til en formular uden at oprette en underformular

Det er ikke altid nødvendigt at oprette et separat formularobjekt for at vise relaterede data. Hvis du f.eks. arbejder på en formular i layoutvisning eller designvisning, og du trækker en tabel eller forespørgsel fra navigationsruden til formularen, opretter Access et underformular-/underrapportkontrolelement, der viser dataene i det pågældende objekt. Objektets standardvisningsegenskab bestemmer, hvordan dataene vises. Normalt er denne indstillet til dataarkvisning, men du kan også angive egenskaben Standardvisning for en tabel eller forespørgsel til Enkelt formular, Delt formular eller Fortløbende Forms, hvilket giver dig større fleksibilitet til at vise relaterede data i formularer.

Bemærk!: Hvis du ændrer egenskaben Standardvisning for en tabel eller forespørgsel, bestemmer det, hvordan den vises, når den åbnes, uanset om du åbner den fra navigationsruden eller åbner den i et underformular/underrapportkontrolelement. Da det nogle gange kan skabe forvirring at ændre visningsindstillingerne for en tabel, når tabellen åbner fra navigationsruden, anbefaler vi, at du bruger en forespørgsel for denne procedure i stedet for en tabel.

Toppen af siden

Har du brug for mere hjælp?

Vil du have flere indstillinger?

Udforsk abonnementsfordele, gennemse kurser, få mere at vide om, hvordan du sikrer din enhed og meget mere.