veld laten verschijnen na indrukken van ja/nee knop.

Status
Niet open voor verdere reacties.

Jan de Ruyter

Verenigingslid
Lid geworden
22 okt 2000
Berichten
152
In access heb ik een ja/nee veld zitten als deze ingedrukt wordt zou er een veld moeten verschijnen waar gegevens in kunnen worden aangebracht.
Hiervoor gebruik ik de volgende VBA instructie.
Waarbij Milieu de ja/nee knop is en MilieuMaatregel het invulveld

Private Sub Milieu_Click()

If Me.Milieu = True Then
Me.MilieuMaatregel.Visible = True
Me.Repaint
Me.Refresh
End If

If Me.Milieu = False Then
Me.MilieuMaatregel.Visible = False
Me.Repaint
Me.Refresh
End If
End Sub

Wat gaat er helaas fout, bij het openen van het formulier waar ik deze actie op los laat staan de velden allemaal zichtbaar ondanks dat er nergens een ja/nee op ja staat, als ik nu op ja/nee druk dan gebeurt er niets met het invulveld, als ik dan het ja/nee veld op nee zet dan verdwijnt het invoerveld.
Dus dat lijkt wel te werken, alleen na het formulier weer op te starten staan alle invulvelden weer zichtbaar.
Ik denk dat ik iets moet aanpassen aan de default van het veld maar weet niet hoe ik dit moet doen, zou iemand mij hiermee kunnen helpen.
 
oplossing gevonden

Ben even verder gaan zoeken en heb inmiddels de oplossing, je moet bij de velden bij eigenschappen zetten dat deze niet zichtbaar zijn, nu werkt het goed, zal de vraag op beantwoord zetten
 
Ben even verder gaan zoeken en heb inmiddels de oplossing, je moet bij de velden bij eigenschappen zetten dat deze niet zichtbaar zijn, nu werkt het goed, zal de vraag op beantwoord zetten

Helaas iets te snel gedacht dat de problemen waren opgelost, als ik het formulier nu open staat de ja/nee knop wel op ja maar er verschijnt geen veld ernaast terwijl die wel is ingevuld, als ik nu weer op de ja/nee knop druk dan verschijnt het veld ernaast wel.
Denk nu dat het iets te maken heeft met dat VBA alleen de actie uitvoert als je daadwerkelijk op de ja/nee knop drukt en dat daarna dit niet meer wordt afgevraagd, klopt mijn gedachte en hoe zou ik dit kunnen verhelpen
 
Jouw gedachte klopt helemaal. Je moet nu dus ook iets verzinnen, dat er iets gebeurd bij de eigenschap openen of laden van het formulier. Je zou bijvoorbeeld de code kunnen aanroepen van de click eigenschap van je ja/nee knop. Bijvoorbeeld:

Private Sub Form_Open()

Call Milieu_Click

End Sub

Waarbij je Call ook mag weglaten.
 
Waarom zou je de zichtbaarheid van het veld [MilieuMaatregel] laten afhangen van de knop? De actie van die actie wordt (uiteraard) alleen uitgevoerd als je er op klikt, en dat doe je als er een reden voor is (lijkt mij). De waarde van die knop (ingedrukt geweest of niet) wordt uiteraard niet opgeslagen, dus er gebeurt niks bij het openen van het formulier. Waarom zou je het tekstvak standaard wel of niet willen laten zien? Mij lijkt dat je dat wilt beslissen op basis van een waarde in een ander veld, of de inhoud van het veld [MilieuMaatregel] zelf.

Overigens kan je code een stuk korter:
Code:
Private Sub Milieu_Click()
If Me.Milieu = True Then
	Me.MilieuMaatregel.Visible = True
Else
	Me.MilieuMaatregel.Visible = False
End If
End Sub

Overigens snap ik de oplossing niet helemaal in connectie met je vraag:
In access heb ik een ja/nee veld zitten
Heb je nu wel of niet een Ja/Nee veld? Want je praat er dus over of het een Wisselknop is. Ik zou de voorwaarden waaronder het veld wel of niet zichtbaar moet zijn eerst eens definiëren. Zoals je het nu doet, met een standaardinstelling (niet zichtbaar) en dan de procedure aanroepen die hem alsnog weer zichtbaar maakt, lijkt mij een zinloze oplossing.
 
Status
Niet open voor verdere reacties.

Nieuwste berichten

Terug
Bovenaan Onderaan