Combo box

Status
Niet open voor verdere reacties.

Noel Prove

Gebruiker
Lid geworden
16 jul 2006
Berichten
98
Hallo,

Ik heb een formulier met een combo box die de gegevens filtert.
Dit werkt prima, alleen is het zo dat wanneer ik het formulier open,
steeds weer de gegevens van de laatste zoekopdracht in het formulier verschijnen,
ook al is de combo leeg.
Bestaat er een manier om te starten met een blanco formulier zonder gegevens ?



Private Sub Combo10_AfterUpdate()
' Find the record that matches the control.

If Not IsNull(Me.Combo10) Then
Me.Filter = "[Track_Uitvoerder] = """ & Me.Combo10 & """"
Me.FilterOn = True
Else
Me.Filter = ""
Me.FilterOn = False
End If

End Sub


Groetjes.
 
Dat is wel raar; ik gebruik regelmatig keuzelijsten om te filteren en bij mij zijn ze altijd (ja, altijd ;) ) leeg als ik het formulier sluit en opnieuw open. Hoef ik niks voor te doen. Ik vermoed dat je dus nog wat anders doet waardoor het filter op het formulier wordt vastgehouden.
 
Neen, eigenlijk niet, ik kan maar niet vinden wat de reden hiervan is.
De enige code die er is, heb ik hier gepost.
 
Dan moet ik de db denk ik even zien, want zo heb ik er ook geen verklaring voor. Al kun je het formulierfilter natuurlijk met VBA wel leeg maken als workaround.
 
Hallo,

Ik heb ondertussen het probleem opgelost, t.t.z. in plaats van steeds de gegevens
van de laatste zoekopdracht weer te geven bij het openen, worden nu alle records weergegeven.

Persoonlijk zou ik liever hebben dat er geen data in de lijst wordt weergeven bij het openen
en de optie "All" toevoegen in de combo.
 
Persoonlijk zou ik liever hebben dat er geen data in de lijst wordt weergeven bij het openen en de optie "All" toevoegen in de combo.
Dat is onzinnig; een keuzelijst laat zien wat er in je tabel staat. De optie 'All' zal niet bestaan dus daarop filteren is onzin. Nogmaals: in een correct opgezet formulier bestaat jouw probleem niet. Dat jij het wel hebt, betekent dus dat je iets niet goed doet. Maar wat, kan ik zonder de db te zien nooit raden natuurlijk. En nogmaals de workaround: zet in de Bij Openen gebeurtenis van je formulier deze code:
Code:
Private Sub Form_Open(Cancel As Integer)
    Me.Filter = ""
    Me.FilterOn = False
End Sub
en je probleem is ook opgelost.
 
O.K. ik probeer de DB te uploaden maar ik krijg ze niet voldoende gecomprimeerd.
 
Als de db niet gecomprimeerd kan worden (en gezipt natuurlijk) tot onder de 100 kb kun je nog een fileshare als wikisend.com proberen, of de db hernoemen naar een .xlsb bestand. Dat mag namelijk 1Mb zijn. Wij kunnen hem dan weer hernoemen naar accdb.
 
o.k. hierbij de upload. Let wel, extensie is veranderd.
Ik heb zoveel mogelijk alles verwijderd om het bestand zo klein mogelijk
te krijgen.
 

Bijlagen

  • Muziek.xls
    880 KB · Weergaven: 16
Ik kan je probleem niet reproduceren. De enige manier om het formulier te openen met de laatste filtering, is als je a) voor het sluiten van het formulier de filtering bewaart (formulier opslaan dus) en b) de optie <Filteren bij laden> op <Ja> hebt staan. Als de optie <Filteren bij laden> op <Nee> staat, zou je het effect nooit mogen hebben, zelfs niet als je het laatste (of een ander filter natuurlijk) bewaard hebt door bijvoorbeeld op <Ctrl>+<s) te drukken. Sowieso zou ik formulieren an sich nooit bewaren. Tenzij je dat natuurlijk wilt, dan moet je het wel doen.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan