Record in formulier opzoeken via meerdere keuzelijsten

Status
Niet open voor verdere reacties.

VeerleVR

Gebruiker
Lid geworden
5 aug 2011
Berichten
38
Hoi iedereen,

Ik probeer nu al een week iets op te lossen via Access maar lukt er niet in :
Het is de bedoeling dat ik een formulier maak obv een database (tabel) en dan daar via een aantal selecties gegevens kan tonen dan.
de selecties zijn: klanten
Productcategorie
Waardecategorie
Fiscale jaar
dus je zou dan bvb: klanten -> Albert Heijn
productcategorie -> Frieten
waardecategorie -> Omzet
fiscale jaar -> 2011
moeten selecteren waarna je die betreffende record te zien krijgt en je de cijfers van die klant, die categoriën en dat jaar te zien krijgt per maand.

Kan iemand me helpen ?

ERG BEDANKT :)
 
Dat klinkt als een redelijk standaard filtervraagje; en die komt toch regelmatig voorbij op dit forum. En daarbij gebruik ik meestal een van deze twee voorbeelden...
 

Bijlagen

  • Filteren Uitgebreid.rar
    74,7 KB · Weergaven: 33
  • Filteren DocReg.rar
    31,6 KB · Weergaven: 33
Bedankt

Bedankt voor de voorbeelden, maar ik snap niet hoe je tot dat resultaat komt (bij Filteren uitgebreid)
Heb je een soort van stappenplan van dit voorbeeld ?

ERG BEDANKT !
 
Ik heb er nog geen stappenplan van, maar in de komende cursussen Access wordt het principe wel behandeld. In het kort werkt het als volgt: elk zoekelement (tekstvak, keuzelijst) kan bijdragen aan het filter, dus het filter moet worden opgebouwd op basis van de waarden die je intypt of selecteert. Bij alle selectieopties zie je dus dit soort code staan:

Voor een keuzelijst met invoervak:
Code:
Private Sub cboFilter1_AfterUpdate()
    sNaam = Screen.ActiveControl.Name
    sTag = Screen.ActiveControl.Tag
    sWaarde = Me(sNaam).Value
[B]    CheckFilter sNaam, sWaarde[/B]
End Sub

En voor een tekstvak:
Code:
Private Sub txtFilter2_Change()
    sNaam = Screen.ActiveControl.Name
    sTag = Screen.ActiveControl.Tag
    sWaarde = Me(sNaam).Text
[B]    CheckFilter sNaam, sWaarde[/B]
    Me(sNaam) = sWaarde
    Me(sNaam).SelStart = Me(sNaam).SelLength
End Sub

De vette regel is de belangrijkste, want die roept de functie aan die het filter maakt. De functie zelf bevat al informatie over wat-ie doet, en hij is een beetje te uitgebreid om hier te behandelen. Dat bewaar ik dus voor de cursus ;)
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan