Avatar billede fobian Nybegynder
02. maj 2002 - 09:52 Der er 2 kommentarer og
2 løsninger

Combobox med indholdsrestriktion

Hej eksperter

Jeg er ved at lave en formular som skal kunne gemme oplysninger om arbejdstimer for en medarbejder på et projekt.  Når jeg i formularen vælger lønnr bliver medarbejdernavn og stillingsbetegnelse vist på formularen. Jeg har så en combobox med ArbejdsArt, hvor man skal vælge hvilken ArbejdsArt der er udført. Det er så her at mit problem starter - Comboboxen skal kun vise de ArbejdsArter, som den enkelte stillingsbetegnelse kan udføre. Til at holde styr på hvem der kan lave hvad, så har jeg 3 tabeller:
"Arbejdsarter" - felter: Arbejdsarter
"Stillingsbetegnelser" - felter: Stillingsbetegnelser
"StillingOgArter" - felter Stillingsbetegnelser og Arbejdsarter

Dvs. det jeg gerne vil have vist i min combobox er de Arbejdsarter i "StillingOgArter", som er lig med stillingsbetegnelsen for den valgte medarbejder på formularen.

Efter hvad jeg kan læse af tidligere lignende spørgsmål, så er det vist noget med en Function() i VBA der kan løse opgaven ved at indlæse listen i et Array - eller sådan noget.
Tabellerne ligger i en Access97 database.
Er der en venlig sjæl der lige har løsningen på opgaven :-)
/fobian
Avatar billede jkrons Professor
02. maj 2002 - 09:56 #1
Kan du ikke bare basere din comboboks på en forespørgsel, der som kriterie har stillingsfeltet i formularen? Du kan så requery, når comboboksen får focus.
02. maj 2002 - 09:57 #2
Rækkekilden til comboboksen sættes til:
Select * From Arbejdsarter Where Stillingsbetegnelser = '" & Form!Stillingsbetegnelse & "'"

På formualarens VedAktuel-hændelse og ved Stillingsbetegnelse's EfterOpdatering-hændelse lægges følgende kode:
Me!Arbejdsarter.Requery

/Thomas
Avatar billede fobian Nybegynder
02. maj 2002 - 12:12 #3
Tak til begge. Jeg havde selv prøvet denne løsning tidligere hvor den ikke virkede. Jeg har nu fundet ud af at mit problem var at jeg har to felter i formularen med stillingsbetegnelser det ene hedder Arbejdstimer.Stillingsbetegnelse og det andet hedder Medarbejder.Stillingsbetegnelse. Så når jeg skriver min SQL sætning vil den ikke acceptere at den skal finde værdien i
Forms!Arbejdstimer!Arbejdstimer.Stillingsbetegnelse
Nu har jeg omdøbt feltet til kun at hedde Stilling i stedet for Arbejdstimer.Stillingsbetegnelse så nu virker det.
Avatar billede jkrons Professor
02. maj 2002 - 12:14 #4
Godt at du fik det til at virke. Tak for point.
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