meerdere selecties/filters voor openen rapport

  • Onderwerp starter Onderwerp starter scw
  • Startdatum Startdatum
Status
Niet open voor verdere reacties.

scw

Gebruiker
Lid geworden
5 jun 2009
Berichten
530
Goedendag,

Ben bezig met het volgende scherm te ontwikkelen (zie bijlage), maar kan de laatste eindjes niet aan elkaar knopen :confused:: hoe zet ik dit neer dat wanneer ik op datum wil sorteren, maar ook een stadion selecteer en wanneer er nog een selectievakje A,B,C wordt aangevinkt deze ook wordt gefilterd... maar ook weer op bijvoorbeeld op nummer sorteren en geen vakjes aangevinkt etc. Hoe zet ik dat neer in de vba code?

Zie uit naar jullie hulp, alvast bedankt,

scw
 

Bijlagen

Je probeert te filteren en te sorteren in de filterstring; dat zal niet gaan lukken. Sorteren moet je op een andere manier instellen.
 
Bedankt voor je reactie. Is het uberhaupt niet mogelijk om tegelijkertijd te sorteren en te filteren?

Zou je kunnen aangeven hoe ik het wel zou kunnen oplossen (mogelijk op een andere manier?)?
 
Ik heb in ieder geval je filter probleem opgelost. Ik zal nog even kijken naar je sorteer'probleem'. Zelf zou ik daar namelijk geen probleem van maken, maar het rapport zodanig opmaken met groeperingen etc dat het altijd goed staat...
 
Laatst bewerkt:
Ik heb even een nieuw bestandje gemaakt; deze sorteert wel.
 

Bijlagen

Ah dit ziet er bijzonder goed uit!! :D

Maar als ik nu geen selectievakje aanvink en alleen een sortering toepas (dus alle records wil zien): blijft die leeg?

En ik kom er niet zo gauw achter waarom die nog een 'syntax error (missing operator)' geeft bij selectievakjes B en C :confused:
 
Er is geen check gemaakt op een leeg filter, dat klopt. Ik ga er van uit dat je dat zelf wel kunt :D
 
OK OK ik ga er vanavond even voor zitten dan... die B en C had je zeker ook niet volledig gedaan en veroorzaakt daarom de error óf?
 
't Is een vrij simpele aanpassing; in deze versie wordt alleen nog een openingshaak gezet als A is geselecteerd; bij B en C moet dat natuulijk ook gebeuren, als je A niet gebruikt. Dit is de juiste code:

Code:
        If Not Me.lboStadions = "" Then strWhere = "[Stadion] = '" & Me.lboStadions.Value & "' "
        If Me.chkSelectieA = -1 Then strCheck = strCheck & " (SelectieA= 'A'"
        If Me.chkSelectieB = -1 Then
            If strCheck & "" <> "" Then strCheck = strCheck & " OR " Else: strCheck = " ("
            strCheck = strCheck & "SelectieB= 'B'"
        End If
        If Me.chkSelectieC = -1 Then
            If strCheck & "" <> "" Then strCheck = strCheck & " OR " Else: strCheck = " ("
            strCheck = strCheck & "SelectieC= 'C' "
        End If
 
Hij werkt goed! Heb er zelf nog aan toegevoegd:

Code:
If chkStadion = True And Nz(Me.lboStadions, "") = "" Then
        MsgBox "Geef het stadion aan", vbInformation, "Personen database"
        Me.lboStadions.SetFocus
        Exit Sub
    Else
        [COLOR="red"]If chkStadion = False Then Me.lboStadions.Value = ""[/COLOR]        If Not Me.lboStadions = "" Then strWhere = "[Stadion] = '" & Me.lboStadions.Value & "' "

Zodat wanneer er een stadion geselecteerd is en het vinkje toch weer wordt uitgezet, deze niet meer wordt meegenomen in de filtering...

Is het enige wat nog niet werkt: wanneer ik een stadion selecteer PLUS één van de selectievakjes selecteer: dan krijg ik een foutmelding :confused: 'Invalid use in query expression'.
 
Niet te moeilijk denken...

Code:
Private Sub chkStadion_AfterUpdate()
    If Me.chkStadion = False Then Me.lboStadions = ""
    Me.lboStadions.Enabled = Me.chkStadion.Value
End Sub
 
Je hebt gelijk: nog beter!

Excuses, misschien heb je er over heen gelezen:

Is het enige wat nog niet werkt: wanneer ik een stadion selecteer PLUS één van de selectievakjes selecteer: dan krijg ik een foutmelding 'Invalid use in query expression'.
 
Bij mij doet-ie het prima; ik krijg (en kreeg) de foutmelding niet.... Kijk even of je alle haakjes wel aanmaakt; als je ergens een haakje Openen hebt, moet er ook een haakje Sluiten zijn.
Overigens overlappen de filters naar mijn idee; als je een stadion kiest, krijg je toch ook de A,B en C selecties cadeau...
 
ben er nog niet helemaal uit..

Excuses, ik blijf toch nog met enkele vragen zitten:

1) Zodra ik meerdere filters doe, blijf ik de foutmelding krijgen. Ik heb nog op een andere pc geprobeerd, maar zelfde resultaat. Ook zie ik niet waar nog een haakje bij zou moeten: het lijkt allemaal te kloppen :confused: De filters overlappen elkaar inderdaad, maar dat is niet erg: maar de filters zouden de selectie wel nog verder mogen filteren zeg maar. Dus als ik stadion De Kuip heb en ik filter ook op veld SelectieA dan hoef ik geen Stadion De Kuip te zien met alleen SelectieB.

2) Hoe zet ik het neer als er in veld SelectieA ook nog andere waarden voorkomen, ik noem bijv. X, Y, Z en ik deze ook wil zien juist: wat zet ik dan precies neer?
Code:
strCheck & " (SelectieA= Is NotEmpty"
of iets dergelijks??

3) Wat is nu de fraaiste manier om een titel mee te geven aan het rapport, want:
Code:
'Reports!rptPersonenOverzicht.LeegTekstvak.Value = "Personenoverzicht " & [Stadion]
werkt niet??

Hopelijk is mijn uitleg te begrijpen, anders hoor ik het graag en zal ik het verder toelichten.

Ik hoop ook dat jullie me kunnen helpen en wil alvast daarvoor bedanken.

Gr. scw
 

Bijlagen

  • 8-16-2011 3-34-18 PM.jpg
    8-16-2011 3-34-18 PM.jpg
    29,8 KB · Weergaven: 57
  • 8-16-2011 3-34-39 PM.jpg
    8-16-2011 3-34-39 PM.jpg
    33,6 KB · Weergaven: 46
Je plaatjes hebben allebei dezelfde fout: er ontbreekt een woordje.... Een samengestelde string moet wel weten wat-ie moet doen: is het: [De Kuip] AND [SelectieA]=True, of: [De Kuip] OR [SelectieA]=True? In jouw string ontbreekt het woord AND.
 
:thumb: OK ik ga het eens uitproberen... ben ook benieuwd naar de resterende twee vragen eigenlijk ;)

Bedankt vast,

scw :thumb:
 
Is m'n vraag 2 te begrijpen en vraag 3 te beantwoorden? :rolleyes:

Dank, :thumb:
scw
 
Vraag 2 snap ik niet; die mag je nog een keer proberen.
Vraag 3: als het veld [Stadion] in het rapport zit, moet je die kunnen laten zien in een tekstvak. Op het tekstvan LeegTekstvak zou de formule = "Personenoverzicht " & [Stadion] al genoeg moeten zijn.
 
:d OK antwoord op vraag 3: duidelijk!

Verdere uitleg bij vraag 2: Nu heb ik alleen de waarde A in VeldA staan. Maar er komen ook nog andere waarden in te staan als... Dus wil ik VeldA filteren op alles wat niet leeg is. Hopelijk is dat iets duidelijker ? :rolleyes: En anders hoor ik het natuurlijk graag..
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan