probleem met zoekformulier

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

bince

Gebruiker
Lid geworden
9 okt 2007
Berichten
10
probleem met zoekformulier, ziet niet alle records???

Als je voorbeelden wilt zien van zoek formulieren ga dan even kijken op onderstaande links:

http://www.datapigtechnologies.com/flashfiles/searchform.html

Bij deze link ga je in het menu naar "Gemak" en vervolgens naar "Zoeken".

http://www.accesspower.nl/

mvg
Charles

ik heb de methode van datapigtechnologie geprobeerd maar...

even een korte uitleg: ik heb een database met een 20k records erin. hierin zitten oa de velden: dossiernummer, gemeente, adres, ...
nu is het adres en de gemeente niet altijd ingevuld.
bij een zoekformulier met bovenstaande werkwijze is er dan een probleem, want van de 20k records krijg ik er nog maar 17k te zien als ik de zoekvelden leeg laat en op "query opbouwen" klik
waarschijnlijk omdat die velden in bepaalde records leeg zijn.

Weet er iemand een formule of methode dat wanneer een bepaald zoekveld leeg is (bv adres) access alle velden moet selecteren (leeg of niet leeg van adres)? (en verderbouwt op bv het zoekveld gemeente, waar wel iets ingevuld staat...

Mijn zoekquery is opgesteld als: like dossiernummer "*" EN like gemeente "*" EN like adres "*" ZOEK KNOP
 
Laatst bewerkt:
Controleer op ingevuld

Je kunt eerst controleren of een bepaald veld is ingevuld en pas daarna kijken of de waarde je wel aanstaat.
 
Je kunt eerst controleren of een bepaald veld is ingevuld en pas daarna kijken of de waarde je wel aanstaat.

ik heb het eens geprobeerd door volgende functie te schrijven in mijn query:

IIf([formulieren]![schrijven].[zoekstrt]="";="*";Like [formulieren]![schrijven].[zoekstrt] & "*")

maar blijkbaar lukt het nog niet want nu krijg ik geen enkele record te zien, is hier een andere functie voor?


ps ik heb als standaardwaarde "" staan en als invoermasker /*CCCCCCCCCCCCCCCCCCCCCCCCC;0;" " voor de textbox zoekstrt
 
Laatst bewerkt:
heb ondertussen gelezen dat dit onmogelijk met een iif statement te maken valt.
dan zal ik dit onder vba moeten doen, momenteel heb ik volgende code onder de knop zoeken zitten:

If Me!naamzoeken.Value = "" And Me!bizoeken.Value = "" And Me!zoekstrt.Value = "" Then
MsgBox "Gelieve minstens één zoekopdracht in te geven", vbExclamation, "Lege velden"
Else
DoCmd.OpenQuery "zoeken", acViewNormal, acReadOnly
DoCmd.Close acQuery, "zoeken"
DoCmd.Close acForm, "zoekresultaat"
DoCmd.OpenForm "zoekresultaat", acNormal, "", "", acReadOnly, acNormal
End If


nu zou ik denk ik het probleem kunnen oplossen als ik wist hoe je een criteria in een query kunt opbouwen via VBA (zo kan ik enkel de tekstboxen waar >"" een criteria ingeven
vb tekstboxen:
naamzoeken= mark
bizoeken=""
zoekstrt=""
dan zou er een query 'zoeken' (her)opgebouwd moeten worden met volgende criteria:
naamzoeken=*mark*
(en voor de rest niets)

Iemand enig idee hoe dit kan gedaan worden?
 
Laatst bewerkt:
Ik heb het probleem met lege velden kunnen oplossen en ook deze komen nu in de zoekopdracht (ookal is een ander zoekveld in de record leeg)

de oplossing:
dit heb ik gedaan door de standaardwaarde op ieder tekstveld (in de database) op "" te zetten en een bijwerkquery aangemaakt met volgende voorwaarde criterea: is null vervangen door ""
En nu zie ik alle records, zelfs als ik de zoektekstboxen leeg laat en op zoeken klik
(mits vba controle uitgeschakeld: me!naamzoeken="" ....)

Toch bedankt voor de hulp sesam, maar heb een andere oplossing :D
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan