subform wordt na opslaan niet meer aangepast

Status
Niet open voor verdere reacties.

jelleruben

Gebruiker
Lid geworden
11 nov 2006
Berichten
443
Hallo allemaal,

ik heb een access database, met twee tabellen. in één staan student gegevens, en de andere opleiding gegevens.

Nu heb ik een formulier met een subformulier erin. Het hoofd formulier is van de student. Op dit formulier is ook een dropdown menu, met de opleidingen.
Als ik daar een opleiding kies, dan komt de opleidings gegeven in het subforumlier te staan (functie Requery). Dit alles werkt ook zeker goed.

Echter als de student op is geslagen, en wil dan een andere opleiding kiezen. Dan wordt het subformulier niet meer aangepast. Dit zal komen door dat
in de tabel student al een opleiding ID staat.

Weet iemand hoe ik dit kan oplossen?
 
Ik snap je structuur niet helemaal; het hoofdformulier op basis van Student snap ik, en een subformulier met Opleidingen ook. Maar wat doet dat veld [OpleidingenID] in de tabel Student? Dat hoort daar helemaal niet.
 
Die dropdown menu, staan alle opleidingen van de tbl_opleidingen, maar de opleidingen moet opgeslagen bij de betreffende student in tbl_student. In de tbl_student staat dus ook een kollom opleidingen_ID
 
Laatst bewerkt:
En zoals ik al zei: die hoort daar niet. Tenzij je per student maar één opleiding toestaat, dan mag het wel. Maar dan heb je geen subformulier nodig voor de opleidingsgegevens. Dus leg nog eens wat beter uit wat de bedoeling is.
 
Student mag maar 1 opleiding doen. En deze opleiding moet bestaan in de opleidingen tabel. (vandaar een dropdown menu, om te verkomen dat men zo maar wat in tikt)
 
Dan heb je dus geen subformulier nodig, maar kun je de opleidingsgegevens gewoon in de query zetten die je onder het hoofdformulier gebruikt. Dan verversen de gegevens automatisch.
 
Overgings. zit ik te denken er was nog een andere weg... volgens mij, als ik bijvoorbeeld een dropdown heb, cbo_opleiding. En daar een opleiding koos
dat er tekstvelden zijn die automatische gevuld/aanpast werden (door gegevens uit de tbl_opleidingen werdt gehaald.), Het enige wat ik nog weet
dat is dat de vb code niet erg lang was. Maar ik ben het vergeten.
 
Dat is een andere methode, die niet zo makkelijk is als wat ik hierboven aanhaalde, maar je mag natuurlijk gebruiken wat je wilt :). In het andere geval zet je alle velden die je wilt laten zien in de keuzelijst, en verwijs je in de tekstvelden naar de kolom van de keuzelijst. Komt weinig vb bij kijken overigens. Een tekstveld krijgt dan als Besturingselementbron: . waarbij het # teken voor het gewenste kolomnummer (-1) staat. Dus om de derde kolom te zien, gebruik je als formule: =cbo_opleiding.Column(2).
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan