Twee keuzelijsten met invoervak synchroniseren in een formulier in Microsoft Access
In dit artikel wordt beschreven dat de eigenschap AfterUpdate een gebeurtenisprocedure uitvoert wanneer u een categorie selecteert in de eerste keuzelijst met invoervak.
Origineel KB-nummer: 289670
Opmerking
Vereist basisvaardigheden op het gebied van macro's, coderen en interoperabiliteit. Dit artikel is van toepassing op een Microsoft Access-database (.mdb/.accdb) en op een Microsoft Access-project (.adp).
Samenvatting
In dit artikel wordt beschreven hoe u twee keuzelijsten met invoervak synchroniseert, zodat wanneer u een item in de eerste keuzelijst met invoervak selecteert, de keuzemogelijkheden in de tweede keuzelijst met invoervak beperkt.
Opmerking
In dit artikel wordt een techniek uitgelegd die wordt gedemonstreerd in het voorbeeldbestand, FrmSmp00.mdb.
Meer informatie
In het volgende voorbeeld wordt de voorbeelddatabase gebruikt Northwind.mdb. De eerste keuzelijst met invoervak bevat de beschikbare productcategorieën en de tweede keuzelijst met invoervak bevat de beschikbare producten voor de categorie die in de eerste keuzelijst met invoervak is geselecteerd:
Microsoft verstrekt programmeervoorbeelden alleen ter illustratie, zonder expliciete of impliciete garantie. daaronder mede begrepen, maar niet beperkt tot impliciete garanties met betrekking tot de verkoopbaarheid en/of geschiktheid voor een bepaald doel. In dit artikel wordt ervan uitgegaan dat u bekend bent met de programmeertaal VBScript, alsmede met de hulpprogramma's waarmee procedures worden gemaakt en waarmee fouten in procedures worden opgespoord. U kunt desgewenst contact opnemen met Microsoft Product Support Services voor uitleg over de functie van een bepaalde procedure. Microsoft Product Support Services is echter niet bereid de voorbeelden aan te passen om extra functies toe te voegen of om procedures te maken die aan uw specifieke eisen voldoen.
Open de voorbeelddatabase Northwind.mdb.
Maak een nieuw formulier dat niet is gebaseerd op een tabel of query met de volgende keuzelijsten met invoervak en sla het formulier vervolgens op als Categorieën en producten.
Combo Box 1 ------------------------------- Name: Categories RowSourceType: Table/Query RowSource: Categories ColumnCount: 2 ColumnWidths: 0";1" BoundColumn: 1 AfterUpdate: [Event Procedure] Combo Box 2 -------------------------- Name: Products RowSourceType: Table/Query ColumnWidths: 2" Width: 2"
Opmerking
Als u zich in een Access-project bevindt, is de
RowSourceType
Table/View/StoredProc.Voeg de volgende code toe aan de gebeurtenisprocedure AfterUpdate van de keuzelijst categorieën met invoervak:
Me.Products.RowSource = "SELECT ProductName FROM" & _ " Products WHERE CategoryID = " & Me.Categories & _ " ORDER BY ProductName" Me.Products = Me.Products.ItemData(0)
Bekijk het formulier Categorieën en producten in de formulierweergave.
Opmerking
Wanneer u een categorie selecteert in de eerste keuzelijst met invoervak, wordt de tweede keuzelijst met invoervak bijgewerkt met alleen de beschikbare producten voor de geselecteerde categorie.
Opmerkingen
In dit voorbeeld wordt de tweede keuzelijst met invoervak gevuld met de resultaten van een SQL-instructie. Met deze SQL-instructie vindt u alle producten met een CategoryID die overeenkomt met de categorie die is geselecteerd in de eerste keuzelijst met invoervak.
Wanneer een categorie wordt geselecteerd in de eerste keuzelijst met invoervak, voert de AfterUpdate
eigenschap de gebeurtenisprocedure uit, waarmee de eigenschap van RowSource
de tweede keuzelijst met invoervak wordt ingesteld. Hiermee wordt de lijst met beschikbare producten in de tweede keuzelijst met invoervak vernieuwd. Zonder deze procedure zou de inhoud van de tweede keuzelijst met invoervak niet worden gewijzigd.
Feedback
https://aka.ms/ContentUserFeedback.
Binnenkort beschikbaar: In de loop van 2024 zullen we GitHub-problemen geleidelijk uitfaseren als het feedbackmechanisme voor inhoud en deze vervangen door een nieuw feedbacksysteem. Zie voor meer informatie:Feedback verzenden en weergeven voor