Solved

After validation, make checkbox field true

Posted on 2008-10-17
3
193 Views
Last Modified: 2013-11-28
This validation code works fine, but I forgot to ask (this comes from a previous question):

I want to validate three textboxes, one combo box and 6 checkbox fields. This code does this fine, but now I need to mark another checkbox field IF all required fields are filled or marked AND AFTER that validation.

I've tried adding this line

Me.CheckBoxField = -1

between the For Next statements and between the IF statements, but when it goes thru the validation, it marks the field, EVEN if the fields are not filled or marked.
Private Sub abtnCommand1_Click()
 
Dim ctl As Control
 
For Each ctl In Me.Controls
    If ctl.Tag = "Req" Then
        If ctl.ControlType = acCheckBox Then
            If IsNull(ctl.Value) Or ctl.Value = 0 Then
                MsgBox "Required fields missing. Fill or check missing fields", vbCritical, "Missing fields"
                ctl.SetFocus
                Exit For
            End If
        Else
            If IsNull(ctl) Then
                MsgBox "Required fields missing. Fill or check missing fields", vbCritical, "Missing fields"
                ctl.BackColor = vbYellow
                Exit For
            End If
        End If
    End If
    
Next
 
Exit Sub
 
End Sub

Open in new window

0
Comment
Question by:richieac77
3 Comments
 
LVL 16

Accepted Solution

by:
Chuck Wood earned 65 total points
ID: 22741505
Try this;
Private Sub abtnCommand1_Click()
    Dim ctl As Control, blnGood As Boolean
    blnGood = True
    For Each ctl In Me.Controls
        If ctl.Tag = "Req" Then
            If ctl.ControlType = acCheckBox Then
                If IsNull(ctl.Value) Or ctl.Value = 0 Then
                    MsgBox "Required fields missing. " & _
                       "Fill or check missing fields", vbCritical, "Missing fields"
                    ctl.SetFocus
                    blnGood = False
                    Exit For
                End If
            Else
                If IsNull(ctl) Then
                    MsgBox "Required fields missing. " & _
                        "Fill or check missing fields", vbCritical, "Missing fields"
                    ctl.BackColor = vbYellow
                    blnGood = False
                    Exit For
                End If
            End If
        End If
    Next
    If blnGood Then
        Me.CheckBoxField = True
    Else
        Me.CheckBoxField = False
    End If
End Sub

Open in new window

0
 
LVL 120

Assisted Solution

by:Rey Obrero (Capricorn1)
Rey Obrero (Capricorn1) earned 60 total points
ID: 22741518

Private Sub abtnCommand1_Click()
dim blFilled as boolean 
Dim ctl As Control
blFilled=True 
For Each ctl In Me.Controls
    If ctl.Tag = "Req" Then
        If ctl.ControlType = acCheckBox Then
            If IsNull(ctl.Value) Or ctl.Value = 0 Then
                blFilled=false
                MsgBox "Required fields missing. Fill or check missing fields", vbCritical, "Missing fields"
                ctl.SetFocus
                Exit For
            End If
        Else
            If IsNull(ctl) Then
                blFilled=false
                MsgBox "Required fields missing. Fill or check missing fields", vbCritical, "Missing fields"
                ctl.BackColor = vbYellow
                Exit For
            End If
        End If
    End If
    
Next
 
Exit Sub
Me.CheckBoxField = blFilled
End Sub

Open in new window

0
 

Author Closing Comment

by:richieac77
ID: 31507161
Thanks for the prompt response!!!
0

Featured Post

Free Tool: Subnet Calculator

The subnet calculator helps you design networks by taking an IP address and network mask and returning information such as network, broadcast address, and host range.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

The first two articles in this short series — Using a Criteria Form to Filter Records (http://www.experts-exchange.com/A_6069.html) and Building a Custom Filter (http://www.experts-exchange.com/A_6070.html) — discuss in some detail how a form can be…
Overview: This article:       (a) explains one principle method to cross-reference invoice items in Quickbooks®       (b) explores the reasons one might need to cross-reference invoice items       (c) provides a sample process for creating a M…
Familiarize people with the process of utilizing SQL Server views from within Microsoft Access. Microsoft Access is a very powerful client/server development tool. One of the SQL Server objects that you can interact with from within Microsoft Access…
Using Microsoft Access, learn some simple rules for how to construct tables in a relational database. Split up all multi-value fields into single values: Split up fields that belong to other things into separate tables: Make sure that all record…

829 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question