Avatar billede monmike Nybegynder
16. oktober 2003 - 12:15 Der er 12 kommentarer og
1 løsning

Problemer med Combobox

Jeg har en combobox som indeholder flg:

NAVN      DATA
Poul      Poul
Søren    Søren
Jens      Jens
Peter    Peter
All      ?????????

??????? er problemet. Jeg vil gerne kunne skrive et eller andet som fungere som "Wildcard". Comboxen bestemmer hvilket felter der vises i en underformulars dataark. Hvis man vælger et navn, så vises de poster som har med personen at gøre. Dette fungere fint. Jeg mangler bare at kunne få vist alle posterne uafhængigt af navnet.

Kan man skrive f.eks Poul,Søren, osv eller det kan man bare ikke. Eller findes der en anden måde???
Avatar billede monmike Nybegynder
16. oktober 2003 - 12:17 #1
har også prøvet med feltet tomt. virker heller ikke.
Avatar billede juks Novice
16. oktober 2003 - 12:18 #2
if me.combo = ???? then
me.subform.source = "select * from tabel
me.subform.requery
Avatar billede juks Novice
16. oktober 2003 - 12:19 #3
source = RecordSource
Avatar billede juks Novice
16. oktober 2003 - 12:43 #4
hvad snakker du om .
Avatar billede monmike Nybegynder
16. oktober 2003 - 12:44 #5
Nope det har jeg prøvet. Jeg fik af vide i et tidligere spørgsmål fra Terry at man ikke kan vælge me.subform.recordsource og det kan man heller ikke. Hvis man skriver derudaf i VB, så kommer det heller ikke som en valgmulighed.

Skal man hen og skrive kode for det. Comboboxen må jo lave en query for at vise posterne som virker. Kan man ikke narrer den til at vise dem alle.
Avatar billede juks Novice
16. oktober 2003 - 12:46 #6
du kan jo lave et kritere i din forspørgelse IIF (form.comboboks = ??? ;"";form.comboks)
Avatar billede juks Novice
16. oktober 2003 - 12:47 #7
svar ..
16. oktober 2003 - 13:03 #8
løsningen er nem:

Typisk vil du have en tabel med et personID som nøgle.

Rowsourcen på comboboksen skal således se sådan ud:

Select PersonID, Navn From tblPerson UNION Select null, "(Alle)" From tblPErson ORder By Navn

Komboboksen indeholder nu 2 kolonner, hvor den første har bredden 0. Bundet kolonne er lig 1.

På komboboksens AfterUpdate-hændelse skriver du således:
If isnull(ME!MinCombobox) then
  Me!Subform.Form.Filteron = False
else
  Me!Subform.Form.Filter = "PersonID = " & Me!MinCombobox
  Me!Subform.Form.Filteron = true
endif

Alle navne skal selvfølgelig justeres til dine egne!
Avatar billede monmike Nybegynder
16. oktober 2003 - 14:51 #9
Det virker næsten. Jeg får dog en box op, hvori jeg skal indtaste et parameter værdi i for personen. Hvorfor det ????
16. oktober 2003 - 14:53 #10
Har du ikke personen (personID) med i underformularen?
16. oktober 2003 - 14:53 #11
Feltet behøver ikke at blive vist, men skal blot være med i tabellen/forespørgslen som danner underformularen
Avatar billede monmike Nybegynder
16. oktober 2003 - 15:17 #12
det er på rette vej, men det lort driller. nu låser den combo boxen. udfra hvad der bliver vist på hovedformen.
Avatar billede monmike Nybegynder
16. oktober 2003 - 15:54 #13
Så virker det. Skulle lige have sat lidt tabeller og forespørgsler på plads sammen med deres relationer. Juhuuuuuuuu.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Dyk ned i databasernes verden på et af vores praksisnære Access-kurser

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester