Waarde zichtbaar of onzichtbaar in keuzelijst met invoervak

Status
Niet open voor verdere reacties.

Puzzelhoofd

Gebruiker
Lid geworden
12 nov 2008
Berichten
7
Hallo,

Graag zou ik van iemand horen of het volgende mogelijk is :

Indien een persoon uit dienst is getreden, wil ik dat hij niet meer te selecteren is door de gebruiker op een formulier met een keuzelijst met invoervak. (Veld Actief = waar)
Dit is me wel gelukt. Maar bij eerdere records waar deze naam is geselecteerd, is nu ook de naam van de uit dienst zijnde persoon verdwenen. Hoe maak ik in eerdere records deze personen weer zichtbaar op het formulier ?.

Alvast bedankt

Groetjes
 
Hoewel je vraag duidelijk is heb ik te weinig info.Betreft het 1 keuzevlakof zijn het meerdere.
Een goede manier is om het probleem bij de bron aan te pakken: bij meerdere keuzevlakken dan verander de bron van je keuzevlak waar je de persoon niet meer wil zien.
Betreft het 1 keuzevlak dan zal je ook in de bron moeten gaan maar ervoor zorgen dat je met tijd gaat werken. Je zit dan, naar mijn bescheiden mening, met een ontwerp fout.
 
Hallo Floor
Bedankt voor je antwoord, maar ik snap niet wat je met "tijd werken" bedoeld.

Ik zal proberen het probleem in een voorbeeld db te stoppen.
Die zal ik denk ik morgen of volgende week even maken.

Groetjes
Kees
 
Hallo,

Iets sneller dan gedacht maar hierbij als bijlage het bestandje "klussen".
Het probleem is dus als ik de werknemer op "niet actief" zet, hij ook niet meer in de keuzelijst op het formulier aanwezig is.
In de tabel klussen staat hij nog wel. Hoe maak ik hem weer zichtbaar op het formulier, maar niet in de keuzelijst?.
Bij voorbaat dank voor jullie reactie

Groetjes
Kees
 

Bijlagen

  • KLUSSEN.rar
    89,7 KB · Weergaven: 40
Hallo,

Iets sneller dan gedacht maar hierbij als bijlage het bestandje "klussen".
Het probleem is dus als ik de werknemer op "niet actief" zet, hij ook niet meer in de keuzelijst op het formulier aanwezig is.
In de tabel klussen staat hij nog wel. Hoe maak ik hem weer zichtbaar op het formulier, maar niet in de keuzelijst?.
Bij voorbaat dank voor jullie reactie

Groetjes
Kees
Kees
,
Ik denk dat je twee dingen tegelijk met het zelfde veld wilt bereiken.
1e. Wie voert de klus uit (kunnen alleen maar actieve medewerkers zijn)
2e. Wie kunnen de klussen gaan uitvoeren.

De 1e. laat dus alleen k_aanbieder zien uit tabel TblKlussen voor de specifieke klus.
De 2e zal onafhankelijk van de klus die je hebt gekozen allen aanbieders uit TblKlussen moeten laten zien.

Oké de 1e heb je nu op je formulier staan als keuzelijst. Deze verander je naar een normaal veld voor besturingselement k_aanbieder.
Voor de 2e maak je een nieuwe keuzelijst, maar dan selecteer je alle aanbieders maar je laat het besturingelement leeg.

Als je nu in de 2e lijst een klusser kiest dan moet die nog wel in je 1e veld terechtkomen.
Dit doe je door in standaardwaarde van het 1e veld op te nemen
Code:
=[2eveldnaam].Column(0)
In kolom 0 van de lijst staat het aanbieders Id nummer.

Succes
Wim
 
Laatst bewerkt:
Hallo Wim,

Bedankt voor je uitgebreide antwoord.
Je voorstel is wel een goed idee.
Maar ik heb nog een opmerking :
De code die je geeft werkt wel, maar ik zou graag niet het idnummer van de klusser in dit veld hebben maar de naam van de klusser. Wat ik ook probeer (column 1 tm 10), hij blijft het id nummer geven. Hoe verander ik dit veld in de naam van de klusser.

Groetjes

Kees
 
Hallo Wim,

Bedankt voor je uitgebreide antwoord.
Je voorstel is wel een goed idee.
Maar ik heb nog een opmerking :
De code die je geeft werkt wel, maar ik zou graag niet het idnummer van de klusser in dit veld hebben maar de naam van de klusser. Wat ik ook probeer (column 1 tm 10), hij blijft het id nummer geven. Hoe verander ik dit veld in de naam van de klusser.

Groetjes

Kees
Kees, Even een betere oplossing die zonder meer werkt.
Ik heb niet de beschikking over WinRar en .zip gaat nog al eens fout dus ik doe het maar even zo.

Het veranderen van je velden blijft net als ik dat eerder heb beschreven alleen:
ipv de verwijzing naar de kolom (deze moet je gewoon weer weghalen) het volgende.
Je gaat een gebruikersgebeurtenis maken 'Bij klikken'
Daar komt de volgende code bij te staan
Code:
Private Sub Aanbiederlijst_Click()
    Me.HuidigeAanbieder = Me.Aanbiederlijst.Column(0)
End Sub
Me.HuidigeAanbieder is het veld die verwijst naar de tabel met k_Aanbieder.
Me.Aanbiederlijst.Column(0) is de keuzelijst.

Door deze opdracht wordt iedere keer dat je een keuze maakt de waarde in tabel veranderd.

Nu wil je ook nog de naam zien die er bij hoort. Dit ook als je het record opent en nog geen keuze hebt gemaakt.
Maak daarvoor een nieuwe tekstvak. Ik heb hem 'HulpNaam' genoemd maar dat maakt niet uit.
Hierin komt de naam te staan die hoort bij de 'Id' in de tabel TblAanbieders.
Oké, nu neem je bij 'besturingselement' van 'Hulpnaam' het volgende op
Code:
=DLookUp("[Geslachtsnaam aanbieder]";"TblAanbieders";"Id=" & [HuidigeAanbieder])

Hierdoor wordt iedere keer als de 'Id' veranderd (bij het openen, of bij het selecteren van een andere aanbieder uit de keuze lijst) de naam getoond.

Werkt bij mij perfect, wellicht moet je wat aan de namen van de rubrieken sleutelen, maar..

Succes
Wim
 
Bedankt Wim,

Ik kan hier verder mee. Weer een klein onderdeeltje van dit weerbarstige programma geleerd.

Groetjes

Kees
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan