Voor een specifiek antwoord zouden we eigenlijk een voorbeeldje moeten hebben met de tabellen en formulieren die je hebt, maar een algemeen antwoord kan ik uiteraard wel geven.
Je hebt dus een relatie gelegd tussen de tabellen Planning, Projecten en Klanten, met hopelijk Referentiële Integriteit afdwingen geselecteerd, om te voorkomen dat je verkeerde klanten en projecten aan je planning hangt. Dat zou dan in deze volgorde kunnen zijn:
[Klanten] 1 --> ∞ [Projecten] 1 --> ∞ [Planning]
Ik vermoed, dat je het formulier hebt gebaseerd op de tabel Planning? En dat je met een keuzelijst dan een project wilt selecteren? Je kunt voor de keuzelijst cboProjecten een Rijbron maken, waarbij je als tabellen [Klanten] en [Projecten] gebruikt. Behalve de ProjectID en ProjectNaam (die je wilt zien in de keuzelijst) neem je dan ook de klantgegevens op die je op wilt vragen op het formulier. Dus: Klantnaam, Adres etc. Omdat elk project maar één klant heeft gekoppeld, zou je, als je de query vervolgens uitvoert, voor elk project maar één record moeten zien, met uiteraard de bijbehorende klantgegevens.
Als je op de keuzelijst 6 velden hebt toegevoegd, moet je in de keuzelijst cboProject ook aangeven dat je 6 kolommen nodig hebt. Dat doe je bij de Eigenschappen van de keuzelijst, bij de optie <Aantal kolommen>. Om de Projectnaam te zien, zet je de breedte van de eerste kolom op 0 cm, en geef je voor de overige kolommen een passende waarde. Iets als: 0cm;4cm;3cm;3cm;0cm;0cm. Dat doe je bij de optie Kolombreedten. Het standaardaantal rijen kun je rustig verhogen naar 20, dat zoekt wat makkelijker. De optie Lijstbreedte maak je het totaal van de kolombreedten (in mijn voorbeeld 4+3+3) plus 0,6 cm, voor de breedte van het keuzelijstknopje. De Lijstbreedte is dus 10,6 cm.
Als je het ProjectID als waarde op wilt slaan, wat mij logisch lijkt, dan gebruik je het veld ProjectID in de tabel Planning als Besturingselementbron. Te vinden op het tabblad Gegevens. Omdat het ProjectID de eerste kolom is, is dat ook de Afhankelijke kolom.
Daarmee is je keuzelijst klaar voor gebruik. De volgende stap is nu, om de overige velden uit de keuzelijst op je formulier te zetten. Dat doe je met Tekstvakken.
Voor de klantnaam in txtKlantnaam, die in mijn fictieve voorbeeld in de derde kolom staat, zet je bij de regel Besturingselementbron de formule: =cboProject.Column(2) De opdracht Column begint namelijk te tellen bij 0, dus je moet de waarde altijd met één verminderen om de goede kolom te pakken. Het tekstvak txtKlantAdres krijgt de formule: =cboProject.column(3).
En zo ga je het hele rijtje af. Hoe meer velden je opneemt in de keuzelijst, hoe meer je kunt laten zien op het formulier. Ik heb regelmatig 25 velden op die manier op een formulier gezet, en dat werkt perfect!
Hopelijk kun je hier weer even mee verder?