formulieren, records en VBA

Status
Niet open voor verdere reacties.

Judk5

Gebruiker
Lid geworden
11 mei 2013
Berichten
6
Hallo,

Weet iemand een oplossing voor de volgende probleem?:

Op een formulier heb ik een checkbox toegevoegd, de bedoeling is dat als ik de checkbox invink de achtergrondkleur van een bepaalde tekstlabel (bj. tekstlabel A) verandert. Het probleem is dan dat de achtergrondkleur van tekstlabel A van alle records gaan ook veranderen. Ik heb deze code geschreven:


Private Sub chkbooxEigen_Enter()

If chkbooxEigen.Value = True Then

txtMobiel.BackColor = RGB(255, 34, 56)
Else
txtMobiel.BackColor = RGB(255, 255, 255)

End If
End Sub



Bedankt
 
Je moet de code in het Form_Current() event plaatsen - deze wordt steeds opgeroepen als je een nieuw record opent.
Ik ga ervan uit dat het formulier een dataset erachter heeft zitten, en dat er een veld gekoppeld is aan chkbooxEigen. Code is even uit m'n hoofd dus er kan wel een typefoutje inzitten hoor.
Code:
Private Sub Form_Current()
   UpdateLabelColor()
End Sub

Private Sub chkbooxEigen_Click()
   UpdateLabelColor()
End Sub

Private Sub UpdateLabelColor()
    If chkbooxEigen.Value = True Then
        txtMobiel.BackColor = RGB(255, 34, 56)
    Else
        txtMobiel.BackColor = RGB(255, 255, 255)
    End If
End Sub
 
Bedankt

Ik ga proberen je advies.

Bedankt Rene.:thumb:
 
Bovendien kan het veel simpeler met Voorwaardelijke opmaak. Ik ga er daarbij vanuit dat je de term 'label' verkeerd gebruikt, of de labels 'verkeerd' hebt benoemd. Meestal geef je een tekstvak het voorvoegsel txt en een label het voorvoegsel lbl. Maar daarnaast bestaat je formulier uit één veldobject, dat in een doorlopend formulier herhalend wordt weergegeven. En de opmaak voor al die zichtbare versies van dat tekstveld krijgen dus dezelfde opmaak.
 
Bedankt Michel je informatie was erg nuttig en het probleem is opgelost.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan