Gå til innhold

Kritierie i Access: Blank verdi = Tillat alt


Anbefalte innlegg

Hei!

 

Skal lage en rapport hvor bruker selv skal kunne velge blant en del filter som skal benyttes.

 

F.eks. skal man kunne velge mellom følgende kriterier:

Gårdsnummer

Bruksnummer

Postnummer

 

Disse skal man kunne filtrere på i ulike kombinasjoner. F.eks. bare g.nr., br.nr + postnr eller alle tre.

 

Jeg tenker å bygge dette rundt at kriteriet legges i et skjema hvor rapporten startes med en knapp. Kritierie via dialogboks har jeg ikke fått til da utvalget skal skrives til rapportens bunntekst.

 

Utfordringen er jo uansett at hvis et av kriteriefeltene er blanke vil filteret feile - ettersom blankt felt her skal tolkes som "ikke gjør utvalg på dette feltet".

 

Jeg har prøvd meg på mange ulike løsninger, men ingen funker. Trenger noe slikt som dette:

Iif (IsNUll([Forms].[skjemanavn].[Feltnavn]);"Ikke gjør noe utvalg";[Felt i spørringen] = [Forms].[skjemanavn].[Feltnavn])

 

Noen som har noen løsningsforslag til dette?

 

 

På forhånd takk! :)

- Amund

Endret av amundsf
Lenke til kommentar
Videoannonse
Annonse

Har fått dette halvveis til ved å benytte en iif-regel som dette:

Like IIf([Forms]![Rapport]![Kundenr].[Text]="";"*";[Forms]![Rapport]![Kundenr].[Text])

Denne funker forsåvidt, men krever at man står i feltet "kundenr." i rapportskjemaet (!) Funker dårlig når skal benytte flere felter for filtrering...

 

For oppgava jeg nå jobber med går jeg heller for en løsning med "til og fra verdier".

 

Men vil ha behov for en løsning som det over seinere i prosjektet. Så hvis noen har noen tips blir jeg kjempetakknemmelig! :)

 

På forhånd takk!

Endret av amundsf
Lenke til kommentar
  • 2 uker senere...

Har fått dette halvveis til ved å benytte en iif-regel som dette:

Like IIf([Forms]![Rapport]![Kundenr].[Text]="";"*";[Forms]![Rapport]![Kundenr].[Text])

Denne funker forsåvidt, men krever at man står i feltet "kundenr." i rapportskjemaet (!) Funker dårlig når skal benytte flere felter for filtrering...

 

For oppgava jeg nå jobber med går jeg heller for en løsning med "til og fra verdier".

 

Men vil ha behov for en løsning som det over seinere i prosjektet. Så hvis noen har noen tips blir jeg kjempetakknemmelig! :)

 

På forhånd takk!

 

Skal du benytte en query direkte eller går du via VBA (som da gir deg mye mer muligheter)?

Dersom siste er et alternativ, så vil jeg foreslå å lage SQL'en som skal kjøres som en string som du utvider underveis.

 

Uten å kjenne koden din så godt, så blir forslaget noe slikt

dim sql_str as string
sql_str = "select * from tabell1 where [et påkrevet felt] is not null"
if isnull(cboGnr.value)=False then 'sjekker om combo.box har blitt valgt en verdi
sql_str = sql_str & " and gnr = " & cboGnr.value
end if

'sjekk for Bruksnummer
if isnull(cboBnr.value)=False then 'sjekker om combo.box har blitt valgt en verdi
sql_str = sql_str & "and bnr = " & cboBnr.value
end if

'legg til alle de du ikke vet om blir valgt på samme måten..

'kjør sql'en
docmd.runsql (sql_str)

Endret av Wolverin
Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...