Opret en formular, der indeholder en underformular (en en-til-mange-formular)

Opret en formular, der indeholder en underformular (en en-til-mange-formular)

Når du arbejder med relationsdata (relaterede data, der er gemt i forskellige tabeller), skal du ofte kunne se flere tabeller eller forespørgsler i samme formular. Det kan f.eks. være, at du vil se kundedata fra én tabel og oplysninger om kundens ordrer fra en anden tabel på samme tid. Underformularer er praktiske til dette formål, og i Access kan du nemt oprette en underformular på flere forskellige måder.

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

Hvad vil du foretage dig?

Få mere at vide om underformularer

Oprette eller tilføje en underformular

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

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

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

Åbne en underformular i et nyt vindue i designvisning

Ændre standardvisningen for en underformular

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

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 særligt praktiske, når du vil have vist data fra tabeller eller forespørgsler med en en til mange-relation. En en til mange-relation er tilknytningen mellem to tabeller, hvor værdien af den primære nøgle i hver post i den primære tabel svarer til værdien i et eller flere tilsvarende felter i den relaterede tabel. Du kan f.eks. oprette en formular, der viser medarbejderdata, og som indeholder en underformular, der viser ordrerne for hver medarbejder. Dataene i tabellen Medarbejdere er "en"-siden af relationen. Dataene i tabellen Ordrer er "mange"-siden i relationen – og 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ædede, så underformularen kun viser de poster, der relaterer til den aktuelle post i hovedformularen. Hvis hovedformularen f.eks. viser oplysninger om Hanne Dahl, er det kun hendes ordrer, der vises i underformularen. Hvis formularen og underformularen ikke er sammenkædede, vil underformularen vise alle ordrerne og ikke kun Hannes ordrer.

I følgende tabel defineres nogle af de udtryk, der vedrører underformularer. Access håndterer de fleste detaljer, hvis du følger fremgangsmåderne i denne artikel, men det er nyttigt at vide, hvad der sker i baggrunden, hvis du efterfølgende skal foretage redigeringer.

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. Det sætter Access i stand til automatisk at oprette kæderne mellem underformularerne og hovedformularerne. Hvis du vil se, tilføje eller redigere relationer mellem tabellerne i databasen, skal du klikke på Relationer på fanen Databaseværktøjer i gruppen Vis/skjul.

  • Når et underformularkontrolelement har en formular som kildeobjekt, indeholder det de felter, du placerer i formularen, og det kan ses som en enkelt formular, en fortløbende formular eller et dataark. En af fordelene ved at basere en underformular på et formularobjekt er, at du kan tilføje beregnede felter i 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, at Access opretter både en hovedformular og en underformular, og du vil sammenkæde underformularen med hovedformularen.

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

Du vil bruge en eksisterende formular som hovedformular, men du vil have, at Access opretter en ny underformular og føjer 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. Bemærk! Hvis du bruger Access 2007, skal du klikke på Opret > Flere formularer (i gruppen Formularer) > Guiden Formular.

  2. Vælg en tabel eller forespørgsel på rullelisten Tabeller/forespørgsler på den første side i guiden. Hvis du f.eks. vil oprette formularen Medarbejdere, der viser ordrerne for hver medarbejder i en underformular, skal du vælge Tabel: Medarbejdere ("en"-siden af en til mage-relationen).

    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. Vælg en anden tabel eller forespørgsel på rullelisten Tabeller/forespørgsler på den samme side i guiden. Vælg f.eks. tabellen Ordrer ("mange"-siden af en til mange-relationen).

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

  6. Hvis du, når du klikker på Næste, har angivet relationerne rigtigt, før du startede guiden, bliver du spurgt Hvordan vil du vise dataene? – dvs. efter hvilken tabel eller forespørgsel. Vælg tabellen på "en"-siden af en til mange-relationen. I dette eksempel, hvor du skal oprette formularen Medarbejdere, skal du klikke på efter Medarbejdere. I guiden vises der et lille diagram med en formular. Siden skulle ligne følgende illustration:

    Underformularsiden i guiden Formular

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

    Bemærk: Hvis du ikke får vist spørgsmålet Hvordan vil du vise dataene? i guiden, betyder det, at Access ikke fandt en en-til-mange-relation mellem de tabeller eller forespørgsler, du har valgt. Guiden fortsætter, men Access føjer ikke underformularen 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. Formularerne navngives ud fra de titler, du skriver, og tilknytter et navn til underformularen ud fra den titel, du skriver i 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.

    Der oprettes to formularer – en til hovedformularen, som indeholder kontrolelementet til underformularen, og en til 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å oprettet en ny formular eller at bruge en eksisterende formular som underformular.

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

  2. Klik på den nedadvendte pil i gruppen Kontrolelementer under fanen Design for at få vist galleriet Kontrolelementer, og kontrollér, at Brug kontrolelementguider er markeret.

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

  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øjes der et kontrolelement for underformularen til formularen. Hvis du vælger, at Access skal oprette en ny formular i stedet for at bruge en eksisterende formular, oprettes det nye formularobjekt, og det føjes 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.

    Der tilføjes et kontrolelement for underformularen på hovedformularen, og kontrolelementet bindes til den formular, du trak fra navigationsruden. Access forsøger også at sammenkæde underformularen med hovedformularen på basis af 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 tidligere test ikke virker, kunne Access ikke bestemme, hvordan underformularen skulle sammenkædes med hovedformularen, og egenskaberne UnderordnedeFelter og OverordnedeFelter for kontrolelementet til underformularen 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 Byg Knappen Generator ud for feltet med egenskaben 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 er usikker på, hvilke felter der skal bruges, kan du klikke på Foreslå for at få Access til at fastlægge felterne til sammenkædningen.

    Tip: Hvis du ikke kan se det felt, du vil bruge til at sammenkæde formularerne, skal du evt. redigere postkilden til den overordnede eller underordnede formular for at sikre dig, at sammenkædningsfeltet findes i den. Hvis formularen f.eks. er baseret på en forespørgsel, skal du sikre dig, 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 på fanen Design.

Toppen af siden

Ændre standardvisningen for en underformular

Når du føjer en underformular til en formular, vises underformularen i kontrolelementet for underformularen/underrapporten ifølge egenskaben Standardvisning. 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 egenskaben "Tillad…visning" for visningen er indstillet til Ja. Hvis du f.eks. vil angive Dataark som standardvisning for formularen, skal du kontrollere, at egenskaben TilladDataarkvisning 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 få vist 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, som viser dataene i objektet. Egenskaben Standardvisning for objektet bestemmer, hvordan dataene vises. Som regel er denne indstillet til Dataarkvisning, men du kan også indstille egenskaben Standardvisning for en tabel eller forespørgsel til Enkel formular, Delt formular eller Fortløbende formularer, hvilket vil give dig mere fleksibilitet i visningen af relaterede data på 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

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.

×