Via een formulier selecteer ik via een keuzelijst de zoekcriteria

Status
Niet open voor verdere reacties.

Friend

Verenigingslid
Lid geworden
31 jan 2009
Berichten
1.137
Beste forummers,

Via een formulier selecteer ik via een keuzelijst de zoekcriteria. De query leest deze in en daar is mijn selectie.

Nu loop ik echter tegen het volgende probleem op als ik slechts 1 veld invul, bv bedieningenselectie en de groepselectie leeg laat ik niets krijg.

Ik zou dus graag op beiden willen selecteren maar ook op elk afzonderlijk.

Hoe kan ik dit het beste oplossen?

Dank alvast voor het meedenken.

Friend



zoek.jpg
 
Wat je hier laat zien is exact de reden dat ik zelf nooit zo formulieren filter; ik bepaal het filter altijd via een formulier, en open dat dan met de waarden door het filter mee te geven als parameter. Heeft als voordeel dat je het formulier altijd kunt openen zonder dit soort parametervragen. Maar goed, je bent niet de enige die (nog) zo werkt :). Wat je in ieder geval moet doen, is de criteria verwijderen, en verplaatsen naar aparte velden. Ik heb een voorbeeldje voor de code gemaakt:
Code:
IIf([Formulieren]![Frm_Patient]![cboPatient] Is Null;Waar;[PatientID]=[Formulieren]![Frm_Patient]![cboPatient])
Hier gebruik ik dus een formulier Frm_Patient met een keuzelijst cboPatient. Met een IIF kijk ik of die leeg is of niet. In het eerste geval krijgt de IIF de waarde TRUE, in het tweede geval wordt per record gekeken of cboPatient = PatientID. Dat is TRUE of FALSE, dus ook hier komt uiteindelijk altijd TRUE of FALSE te staan.
Het veld gebruik je om te filteren, en je wilt dan alleen de TRUE waarden zien. Je filtert de rest dus weg: Criterium <>FALSE. Dit soort velden is niet echt interessant, dus je kunt ze het beste verbergen.

Samenvattend: gooi op je huidige velden het criterium weg, maak 2 nieuwe velden aan en gebruik daar een IIF om te kijken of de keuzelijst leeg is of niet. Filter die velden op <>Onwaar.
Resultaat: als je niks invult op je formulier zie je alle records, gebruik je één of meer keuzelijsten, dan wordt het formulier daar op gefilterd.
Draai je de query zonder het formulier, dan krijg je weer de parametervragen, maar als je niks invult zie je alsnog alle records. Het is dus ietsje beter, maar nog steeds niet optimaal (zie mijn eerder opmerking).
 
Michel, Hartelijk dank voor je reactie en antwoord :thumb::thumb: Ben even druk met iets anders wat tussendoor kwam. Laat je nog weten :) Friend
 
Michel, eindelijk tijd gehad, zoals gewoonlijk werkt het weer fantastisch met jouw hulp :thumb::thumb: :). In jouw antwoord zei je:
ik bepaal het filter altijd via een formulier, en open dat dan met de waarden door het filter mee te geven als parameter.
Volgens mij doe ik dat ook omdat je dit een keer eerder had uitgelegd.

Als ik jou goed begrijp :
ik bepaal het filter altijd via een formulier, en open dat dan met de waarden door het filter mee te geven als parameter.
is de juiste werkwijze:

Formulier maken wat niet gekoppeld is aan tabel of query.
Op het formulier cmbZoeklijsten plaatsen
In de query van het rapport in extra veld(en) de verwijzing plaatsen:

Code:
Expr5: IIf([Formulieren]![frmFormTotaal-sel]![bediening] Is Null;Waar;[bediening]=[Formulieren]![frmFormTotaal-sel]![bediening])

Bij criteria
Code:
<Onwaar>
plaatsen.

Het probleem was dat ik in de query in het oorspronkelijke veld de zoek criteria liet ophalen. Thanks to you in een nieuw veld in de query geplaatst en alles werkt perfect! :d
Thanks again !! Friend.
 
Deze methode werkt prima, zoals je gemerkt hebt, maar is afhankeijk van een geopend formulier. Wat ik dus bedoelde, is dat je het volledige criterium opbouwt met VBA, en dat resultaat meegeeft i.p.v. veldverwijzingen naar een formulier.
Of, nog weer anders, gebruik een query waar je steeds de SQL van verandert.
Maar zolang de gebruikte methode werkt (en deze doet dat natuurlijk) zou ik 'm voorlopig zo laten.
 
Michel, dank je wel voor je toelichting. Voor mij om dit te kunnen maken/ opzetten heb ik echt voorbeeldjes nodig van hoe ik dit dan moet doen. Ben helaas geen vba specialist. Mocht je ooit een voorbeeldje willen geven dan graag. Friend
 
Voorbeelden staan in de Access cursus :).
 
Oeps :o dat had ik kunnen weten dus, thanks Friend
 
Status
Niet open voor verdere reacties.

Nieuwste berichten

Terug
Bovenaan Onderaan