Welkom op het forum van startpagina!

Dit forum staat op alleen-lezen. Je kan hier informatie zoeken en oude berichten terugvinden, maar geen nieuwe berichten plaatsen.

Naar overzicht van alle forums

gegevens selekteren in formulier

  • Danny Cannaerts

    Is er een manier om in uw formulier, als ge met gekoppelde tabellen wil werken waarin zich in de ene tabel hoofditems bevinden die op hun beurt in de gekoppelde tabel verschillende subitems bevatten:

    1. een keuzelijst met invoervak plaatst met de hoofditems

    2. een tweede keuzelijst met invoervak waarbij deze zich onmiddellijk beperkt tot de subitems gekoppeld aan het hoofditem dat ge in de eerste keuzelijst gekozen hebt

    3. enz..

    Dank voor eventuele reacties

  • RV

    Zoek ff hier:

    http://office.webforums.nl/forum/index.php

    RV

  • ton

    Stel je hebt een form met als recordsource een tabel.

    Dan maak je in die form een keuzelijst1 met als “row source” (zie properties):

    SELECT DISTINCT hoofdtabel.veld FROM hoofdtabel ORDER BY hoofdtabel.veld;

    Maak dan een event:

    Private Sub Keuzelijst1_Click()

    Keuzelijst2.Requery

    End Sub

    Keuzelijst2 heeft als “row source”:

    SELECT DISTINCT subtabel.veld FROM subtabel WHERE (((subtabel.veld)=)) ORDER BY subtabel.veld;

    Let op dat subtabel.veld ook dat veld is wat de “Bound Collumn” is in keuzelijst1.

  • Danny Cannaerts

    Het lukt me niet;

    Ik heb 1 tabel (loknumm) waarin ik het veld gebouwnummer van een hogere tabel gekoppeld heb: nu wil ik, als ik in de eerste keuzelijst op basis van tabel loknumm, veld gebouwnummer een gebouw kies, alleen de bestaande nivo's zien die aan dat gebouw gekoppeld zijn:

    1rste keuzelijst noemt Gebouwnummer

    2de keuzelijst noemt Keuzelijst_met_invoervak8

    Hieronder uw aanpassingen die ik gedaan heb:

    Rijbron in keuzelijst 1:

    SELECT DISTINCT . FROM loknumm ORDER BY .;

    Rijbron in keuzelijst 2:

    SELECT DISTINCT . FROM loknumm WHERE (((.)=)) ORDER BY .;

    gebeurtenis in keuzelijst 1?:

    Private Sub Gebouwnummer_Click()

    Keuzelijst_met_invoervak8.Requery

    End Sub

    . is 2de veld in afhankelijke kolom in keuzelijst 1

  • ton

    Keuzelijst1 aan elkar schrijven, geen spaties.

    Private Sub keuzelijst1_Click()

    keuzelijst2.Requery

    End Sub

    Keuzelijst1 moet het resultaat geven wat jij ervan verwacht. Dus een lijst met gebouwnummers.

    Als je dit niet hebt dan moet je ook niet verder gaan.

    Rijbron in keuzelijst2:

    SELECT DISTINCT . FROM loknumm WHERE (((.)=)) ORDER BY .;

    Hier heb je dezelfde tabel gebruikt en ik dacht dat je uit een gekoppelde tabel informatie wilt krijgen.

    Dus:

    SELECT DISTINCT . FROM tabel WHERE (((.)=)) ORDER BY .;

    Ik heb het niet helemaal begrepepen maar de keuzelijsten heten keuzelijst1 en keuzelijst2. Je gebruikt ook “Keuzelijst_met_invoervak8”, wat mij een raadsel is.

  • cadann

    Ton,

    Alvast bedankt voor alle moeite;

    Ik zal mijn vraag nog eens herformuleren, misschien niet duidelijk..

    Ik zit met een tabel met gebouwen; elk gebouw heeft verschillende nivo's met bijpassende lokaalnummers en bestemming;(deze gegevens zitten reeds in de tabel)

    Nu wil ik een formulier waarin ik in een deel het betreffende lokaal kan kiezen op volgende manier:

    -een keuzelijst met invoervak waarin ik het gebouw kan kiezen

    -vervolgens een keuzelijst met invoervak waarin in de keuzelijst al direkt de nivo's van dat gebouw in gefilterd worden en er het nivo kan uit kiezen

    -vervolgens een keuzelijst met invoervak waarin alleen de lokaalnummers van het desbetreffende nivo en het desbetreffende gebouw en het juiste lokaal gekozen kan worden

    -eventueel nog een afhankelijk tekstvak waarin automatisch de bestemming gekoppeld aan het lokaal ingevuld word

    Dat is het principe;

  • RV

    Heb je hier al gekeken:

    http://office.webforums.nl/forum/index.php

    Jouw vraag is daar vaker gesteld, ff zoeken op keuzelijst.

    RV

  • ton

    Ik heb je nu begrepen.

    Maak een form (naam=SubformFilter). De record source van deze form =

    SELECT ., ., ., . FROM loknum WHERE ((.) Like & “*”);

    Nu ga je weer een form maken maar dit keer zonder recordsource. De recordsource blijft dus leeg. Deze form (noem het maar “Keuze”) herbergt een aantal listboxen en een subform.

    Maak de eerste listbox (naam: keuzelijst1) met als recordsource

    SELECT DISTINCT . FROM ORDER BY .;

    De subform maak je m.b.v. de wizzard in de form “Keuze”. Omdat je de form “SubformFilter” al gemaakt hebt kun je deze heel eenvoudig selecteren.

    De basis is nu klaar. Je ziet in de SELECT statement dat de subform steeds verwijst naar “keuzelijst1”. De eerste keer heeft keuzelijst1 nog niets maar dat wordt opgevangen door een * toe te voegen in de select statement. Test het maar eens uit. Morgen maken we meerdere listboxen die de subform nog meer gaat beperken.