qry criteria instellen met VBA

Status
Niet open voor verdere reacties.

anlag1

Gebruiker
Lid geworden
31 okt 2010
Berichten
144
Hoe kan de criteria van een query met VBA worden ingesteld? wanneer een formulier wordt gesloten bijv. door een Ok knop, is het de bedoeling dat afhankelijk van de gekozen waarde in dat formulier een nieuw formulier wordt geopend waarin dan de criteria van een query wordt ingesteld.
Of wanneer een andere waarde gekozen wordt, moet dit laatste formulier genegeerd worden en wordt de criteria direct ingesteld.
volgens mij moet dit laatste met vba gerealiseert worden.
Weet alleen niet hoe.
Gr.
Andre
 
Ik snap de vraag niet helemaal... Je opent met de OK knop een nieuw formulier, en sluit daarbij het eerste formulier? En wat moet er in het tweede geval gebeuren?
 
In een tabel met 1 veld kunnen in geval A: meerdere records met verschillende waarden staan, en in geval B: kan het voorkomen dat in alle records dezelfde waarde staat.
Deze waarden dienen in een query als criteria.
Echter in geval A is dat wat lastig omdat er verschillende waarden zijn, daarom dacht ik het volgende: Wanneer de Ok knop van een formulier wordt geactiveerd, moet er naar de tabel "gekeken" worden,
in geval A: moet er een nieuw formulier worden geopent met daarin een keuzevak met de verschillende waarden uit de tabel, in geval B: hebben alle records dezelfde waarde
en het openen van het nieuwe formulier is dan niet nodig dit formulier wordt dan genegeerd, de criteria van de query kan direct uit de tabel gehaald worden, dacht ik zo.
Weet alleen niet waar ik moet beginnen.
Groet
Andre
 
Ik snap het nog steeds niet; je hebt een tabel met één veld. Klinkt simpel genoeg. In die tabel heb je records. Of één record. Maar is dat dan een tijdelijke tabel? Omdat je beweert dat je de ene keer één record hebt, en een andere keer meerdere records? Als ik een tabel maak begin ik (logischerwijs) met niks, en daarna voeg je steeds nieuwe records toe. Ik krijg zelden dat ik net zoveel records weggooi zodat ik er nog één overhou. Ik snap dus echt niet wat je aan het doen bent...
 
Is idd een tijdelijke tabel.
Mijn probleem zit in het feit dat ik iets probeer uit te leggen zonder te zeggen waar ik mee bezig ben.
Ik denk met een simpel voorbeeldje antwoord te krijgen.
Blijkt niet zo te werken.
Krijg 2 tabellen aangeleverd t.w. tbl_components en tbl_connections, de eerste tabel bevat elektrotechnische materialen op verschillende lokaties, lees panelen, deze panelen zijn in een kast gemonteerd.
De tweede tabel bevat de elektrische verbindingen tussen die materialen.
Stel de lokaties heten a,b,c etc.
Nu kun je via een formulier de lokatie kiezen waarvan de verbindingen gerapporteerd moeten worden.
bijv. van a naar a, of van a naar b, of van a naar c, etc.
de gekozen lokatie of lokaties worden opgeslagen in een tijdelijke tabel.
Het gewenste rapport krijgt een documentnummer en een revisie, produktgegevens, etc. deze gegevens zijn gerelateerd aan een lokatie. bijv. als de verbindingen van a naar b gevraagt worden, kan in de rapportfooter de gegevens van a of b vermeld worden maar niet allebei.
Wanneer de verbindingen van b naar b gevraagt worden, kan het rapport direct gegenereert worden, met de lokatiegegevens van b in de rapport footer.
als de verbindingen van a naar b gewenst zijn moet er een formulier geopend worden waarin gekozen kan worden welke lokatie
gegevens er in de rapport footer geplaatst worden, die van a of die van b.
gr.
Andre
 
De simpelste oplossing is misschien om de koptekst altijd via de keuzelijst te doen, ook al zit er maar één optie in. Je kunt bij een enkele waarde die waarde dan wel als gekozen waarde in de keuzelijst zetten, zodat de gebruiker niets hoeft te kiezen. In je rapporttekst neem je dan de geselecteerde waarde over.
 
Ok, begrijp ik, had al aan zoiets zitten denken, het schijnbaar niet zo eenvoudig
denk dat ik die kant op ga, nog 1 vraagje hieromtrent, als het formulier met keuzevak
wordt gepoend is het keuzevak altijd leeg ook al is er maar een optie beschikbaar.
Kan het niet zo zijn dat bij het openen de eerste gelijk zichtbaar is?
Gr.
Andre
 
Ja, dat kan. Bijvoorbeeld door de query van de keuzelijst via een recordset te openen, en bij een Count van 1 de waarde toe te wijzen aan de keuzelijst. Zal eens kijken of het ook wat simpeler kan...
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan