Eljefegeneo
Still trying to learn
- Local time
- Yesterday, 19:59
- Joined
- Jan 10, 2011
- Messages
- 902
CheckBox Backcolor
I have the following module which displays the backcolor of a checkbox lable if it is true or false (written by supermoderator Galaxiom)
Private Sub FormatLabel(chk As Control)
With chk.Controls(0)
If chk Then
.BackColor = vbYellow
.BackStyle = 1
.ForeColor = vbRed
Else
.BackColor = vbWhite
.ForeColor = vbBlack
End If
End With
End Sub
And on each forms OnCurrent event I have:
Dim itm As Control
For Each itm In Me.Controls
If itm.ControlType = 106 Then FormatLabel itm
Next
Which works great! But I cannot figure out how to make it work in the control AfterUpdate Event. I tried using it in the current control's (checkbox) after update event
Dim itm As Control
If itm.ControlType = 106 Then FormatLabel itm
but nothing happens (no change, no error message).
I have tried creating a new module:
Public Sub CheckBoxFormat(chk As Control)
If chk = -1 Then
chk.BackColor = vbYellow
chk.BackStyle = 1
chk.ForeColor = vbRed
Else
chk.BackColor = vbWhite
chk.ForeColor = vbBlack
End If
End Sub
But when I try to call it in the AfterUpdate event for the particular checkbox
Private Sub CheckBoxA_AfterUpdate()
Dim itm As Control
If itm.ControlType = 106 Then
CheckBoxFormat itm
End Sub
I get the error message "Expected Variable or Procedure not module"
So, (1) is my module all wrong or (2) am I calling it incorrectly or (3) wrong on both items?
I have the following module which displays the backcolor of a checkbox lable if it is true or false (written by supermoderator Galaxiom)
Private Sub FormatLabel(chk As Control)
With chk.Controls(0)
If chk Then
.BackColor = vbYellow
.BackStyle = 1
.ForeColor = vbRed
Else
.BackColor = vbWhite
.ForeColor = vbBlack
End If
End With
End Sub
And on each forms OnCurrent event I have:
Dim itm As Control
For Each itm In Me.Controls
If itm.ControlType = 106 Then FormatLabel itm
Next
Which works great! But I cannot figure out how to make it work in the control AfterUpdate Event. I tried using it in the current control's (checkbox) after update event
Dim itm As Control
If itm.ControlType = 106 Then FormatLabel itm
but nothing happens (no change, no error message).
I have tried creating a new module:
Public Sub CheckBoxFormat(chk As Control)
If chk = -1 Then
chk.BackColor = vbYellow
chk.BackStyle = 1
chk.ForeColor = vbRed
Else
chk.BackColor = vbWhite
chk.ForeColor = vbBlack
End If
End Sub
But when I try to call it in the AfterUpdate event for the particular checkbox
Private Sub CheckBoxA_AfterUpdate()
Dim itm As Control
If itm.ControlType = 106 Then
CheckBoxFormat itm
End Sub
I get the error message "Expected Variable or Procedure not module"
So, (1) is my module all wrong or (2) am I calling it incorrectly or (3) wrong on both items?