Zichtbaar na waarde

Status
Niet open voor verdere reacties.

Japsur

Gebruiker
Lid geworden
9 apr 2004
Berichten
650
Hallo kenners,

Ik zit met een probleempje.
Ik wil in een query/formulier het zo hebben dat wanneer ik de kolom kaderlid (ja/nee) aanvink (ja dus), dat er dan een 1e kolom verschijnt waarin ik kan kiezen tussen de verschillende kaders. Wanneer ik deze dan weer vul met een bepaalde waarde dat ik dan weer een 2e kolom zie, voor een eventuele 2e functie. Dit zo doorgaand tot een 5e functie.
Of dat het wel zichtbaar is, maar dat je moet beginnen met vinken en dan kolom 1, 2, 3 kunt invullen.
Wat ik hiermee wil bereiken is dat niet iemand bij kaderfunctie 5 alleen wat kan invullen zonder het aangevinkt te hebben.
Weet iemand hoe ik zoiets moet maken, in query/formulier??? Graag antwoord:D :thumb:
Alvast bedankt
 
Je kunt dat niet in een query oplossen.

In een formulier kun je een controle inbouwen dat alleen veld 1 zichtbaar is, als dat gevuld wordt kan je op het moment van opslaan veld 2 zichtbaar maken etc.

Je hebt dan ook niet de vinkvakjes nodig. Scheelt weer in je tabel.

Houdt er wel rekening mee dat je bij het openen van het formulier ook moet checken welke velden er zichtbaar moeten zijn.


Grtz,
 
Ja OK, maar hoe maak je dat dan in een formulier? Dat snap ik dus niet.
 
Ben je een beetje bekend met VBA?

Als je de velden standaard op onzichtbaar zet kun je in VBA m.b.v. "me.veldnaam.visible = true" het veld zichtbaar maken. Met de volgende code zit er ook nog een controle in die dat alleen doet als er iets in het veld staat:

Code:
if length(me.veldnaam) > 0 then
    me.veldnaam.visible = true
end if


GRtz,
 
Ja OK, maar bij welke gebeurtenis moet ik deze code plakken?
Ik neem aan dat ik begin met de code in de eerste kolom

code:--------------------------------------------------------------------------------
if length(me.kaderlid) > 0 then
me.kaderlidfunctie1.visible = true
end if
---------------------------------------------------------------------------------------

Kaderlid = ja/nee vakje (selectievakje) en kaderlidfunctie1 is een selectievak.

Ik snap de code wel, maar ik weet niet waar ik deze moet plaatsen :(
 
Plaats de code bij de gebeurtenis "Bij Openen" / On Open" van het betreffende formulier.

Suc6

Remco
 
Ik krijg nu een compileerfout wanneer ik het formulier open....

hij gaat op length staan...
 
maak er dit van:

if isnull(me.kaderlid) then
me.kaderlidfunctie1.visible = true
end if
 
Nee dit is het ook niet.

Ik denk dat niet kan omdat ik alle records in het formulier heb staan, ze zijn allemaal zichtbaar. En dan lijkt het mij onlogisch dat ik voor 1 rij wel de kolom zichtbaar kan laten worden en voor een andere rij weer niet. Of ik heb het mis. Maar het werkt in ieder geval niet. Wanneer ik de kolom kaderfunctie1 onzichtbaar maken en de code bij het open van formulier plaats blijft de kaderfunctie niet zichtbaar ook al is bij kaderlid het aanvinkvakje aangevinkt.
 
Je wilt dus kijken of het veld kaderlid aangevinkt is of niet.

aha...

dan wordt de code als volgt:

if me.kaderlid = true then //als kaderlid is aangevinkt dan
me.kaderlidfunctie1.visible = true
end if

groeten,

Remco
 
Tja, volgens is het nog nie duidelijk of ik doe IETS gruwelijks fout.
Ik heb maar even het scherm erbij gegooid in de bijlage.
De namen aan de linkerkant heb ik wegens privacy weggelaten. Zo zijn m'n form er uit.
Ik wil dus dat iemand niet automatisch bij kaderfunctie 4 iets kan invullen (zie uitvouwvenster wat bij elk vak de mogelijk is) voordat kaderfunctie 3,2,1 en kaderlid lid zijn ingevuld. Dat men dus begint bij kaderlid ja/nee. Wanneer je kaderlid hebt aangevinkt, je dan pas de mogelijkheid hebt om ALLEEN wat in kaderfunctie1 wat te kunnen kiezen. Wanneer je in kaderfunctie1 wat gekozen hebt, moet de mogelijkheid bestaan dat je vervolgens in kaderfunctie2 de 2e functie kunt aangeven. Nu zijn kaderfunctie 3 en 4 nog steeds 'vergrendeld' Pas wanneer er weer wat in de 2e wat staat ingevuld is de 3e ontgrendeld. enz enz enz.
Maar met de geboden mogelijkheden van jullie wil het niet zo geloof ik, of zoals ik al eerder zei: ik doe iets gruwelijks fout......
 
Laatst bewerkt:
Op een continuous form is het niet mogelijk om per record controls wel of niet zichtbaar te maken. Je zou kunnen proberen om een routine te maken achter het onCurrent event dat alle lege controls disabled. Maar dan worden waarschijnlijk de controls bij alle record inactief.


Grtz,
 
Ok, bedankt, nu heb ik zekerheid, ik zal proberen iets anders te maken...
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan