/ Published in: Visual Basic
Expand |
Embed | Plain Text
Copy this code and paste it in your HTML
Private Sub chkOther_BeforeUpdate(Cancel As Integer) ' Validation for check box with a corresponding text field. ' When users check chkOther, they are encouraged to specify in txtOther what they mean. ' If they enter something in txtOther and then decide to uncheck chkOther, this routine ' tells them the data in txtOther will be deleted. This prevents orphaned data ' being stored in txtOther when chkOther isn't checked. If Not IsNull(Me.txtOther) Then ' If txtOther has data If Not Me.chkOther.Value = True Or IsNull(Me.chkOther) Then ' and the user unchecks chkOther, ask the user to confirm the change If MsgBox("Unchecking this will delete the information in the adjacent text field. " & _ Chr(13) & Chr(13) & "Continue?", vbYesNo + vbDefaultButton2) = vbYes Then ' If the user clicks 'Yes' Me.txtOther = Null ' delete the data in txtOther Else ' Otherwise, if the user doesn't click 'Yes' Cancel = True ' don't go through with the change (i.e., cancel the update), Me.chkOther.Undo ' restore the value of chkOther to the original answer (i.e., checked) Exit Sub ' and leave this routine End If End If End If 'Check the final value in chkOther to determine whether to enable or disable txtOther. 'If chkOther is True (i.e., checked), set txtOther's enabled property to True (i.e., -1). 'If chkOther <> True (i.e., it's unchecked), set txtOther's enabled property to False (i.e., 0). Me.txtOther.Enabled = IIf(Me.chkOther = True, -1, 0) End Sub