Solved

After validation, make checkbox field true

Posted on 2008-10-17
3
188 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 119

Assisted Solution

by:Rey Obrero
Rey Obrero 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

How to run any project with ease

Manage projects of all sizes how you want. Great for personal to-do lists, project milestones, team priorities and launch plans.
- Combine task lists, docs, spreadsheets, and chat in one
- View and edit from mobile/offline
- Cut down on emails

Join & Write a Comment

Suggested Solutions

I originally created this report in Crystal Reports 2008 where there is an option to underlay sections. I initially came across the problem in Access Reports where I was unable to run my border lines down through the entire page as I was using the P…
Describes a method of obtaining an object variable to an already running instance of Microsoft Access so that it can be controlled via automation.
Learn how to number pages in an Access report over each group. Activate two pass printing by referencing the pages property: Add code to the Page Footers OnFormat event to capture the pages as there occur for each group. Use the pages property to …
In Microsoft Access, learn how to use Dlookup and other domain aggregate functions and one method of specifying a string value within a string. Specify the first argument, which is the expression to be returned: Specify the second argument, which …

743 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

Need Help in Real-Time?

Connect with top rated Experts

11 Experts available now in Live!

Get 1:1 Help Now