2X klikken voor datumfilter

Status
Niet open voor verdere reacties.

pieter28

Gebruiker
Lid geworden
29 jul 2013
Berichten
43
hallo Allen,

ik heb een VBAcode voor een datumfilter, code werkt goed op 1 puntje na: je moet 2 keer dezelfde datum invullen wil hij de gefilterde records weergeven.

Private Sub Tekst26_Change()
Me.Filter = "[Laadatum]= #" & Me![Tekst26] & "#"
DoCmd.RunCommand acCmdApplyFilterSort

End Sub

iemand een idee waarom dit is?


Pieter
 
Behalve dat je filter niet bepaald bedrijfszeker is (VBA filtert met Amerikaanse datumnotatie, dus 11-9-2012 is niet 11 september, maar 9 november) zou het moeten werken. De volgende code werkt veel beter:
Code:
Private Sub Tekst26_Change()
Dim strDateField As String
Dim sFilter As String
Const strcJetDate = "\#mm\/dd\/yyyy\#"  'Deze string NIET VERANDEREN!!.
    
    'Zet je veldnaam tussen de rechte haken.
    strDateField = "[Laadatum]"
    
    'Opbouwen van de filterstring.
    If IsDate(Me.Tekst26) Then
        sFilter = "(" & strDateField & " = " & Format(Me.Tekst26, strcJetDate) & ")"
        Me.Filter = sFilter
        Me.FilterOn = True
    Else
        Me.Tekst26 = ""
        Me.Filter = ""
        Me.FilterOn = False
    End If
    
End Sub

Overigens: als je code post, dan graag opmaken met de CODE knop, zoals ik ook heb gedaan.
 
Goedemorgen Michel,

Ik moet nu nog steeds 2X klikken voordat het formulier filtert, wat kan ik fout doen?


Pieter
 
Verbaast me an sich niks, want zoals ik al zei: in beginsel zou je code moeten werken. Je hebt vermoedelijk in de onderliggende query nog een criterium staan. Die zou ik er dan uit gooien.
 
Hoi Michel,

In de onderliggende Query heb ik geen criterium staan.

Heeft het niets te maken met de datum die omgezet moet worden?


Pieter
 
Als je velden kloppen, dan moet het filter werken. Overigens is de Change gebeurtenis in deze niet handig, omdat je het filter niet wilt toepassen als je een datum wijzigt (want je kunt maar één ding tegelijk wijzigen) maar kun je beter AfterUpdate gebruiken. Dan gaat het filter werken zodra je iets anders aanklikt, en dus pas als het datumfilter klaar is.
 
Michel,

Werkt als een trein, wederom bedankt dat je mij weer hebt geholpen :thumb:

Pieter
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan