troubleshooting Question

Create a VBA Loop in Access to check records and create and action

Avatar of edrz01
edrz01Flag for United States of America asked on
Microsoft AccessVBA
7 Comments1 Solution213 ViewsLast Modified:
I have created an Access for to replicate 4 shipping labels. There is a table called tbl_Labels4, which is the Data Source for the form.
I would like the form to check the table for the four records.

The default BackColor for the Label Box (bx_1 etc) is vbRed. When the loop checks the records and records 1 & 2 are blank. And Record 3 has a Shipping Name and Address, then the BackColor should be changed to vbGreen. Hence if Record 4 is blank, then the BackColor will be vbRed.

I’ve tried a few loops but have failed in my attempts. Can anyone assist.

Here is the original IF Then statement I used in a Function and had Form_Current call the below code:
Function SelectLabel()
DoCmd.GoToRecord , , acFirst
    If IsNull([Shipping_Name]) = True And IsNull([Address]) = True Then
            bx_1.BackColor = vbRed
    Else
            bx_1.BackColor = vbGreen
    End If
DoCmd.GoToRecord , , acNext
    If IsNull([Shipping_Name]) = True And IsNull([Address]) = True Then
            bx_2.BackColor = vbRed
    Else
            bx_2.BackColor = vbGreen
    End If
DoCmd.GoToRecord , , acNext
    If IsNull([Shipping_Name]) = True And IsNull([Address]) = True Then
            bx_3.BackColor = vbRed
    Else
            bx_3.BackColor = vbGreen
    End If
DoCmd.GoToRecord , , acNext
    If IsNull([Shipping_Name]) = True And IsNull([Address]) = True Then
            bx_4.BackColor = vbRed
    Else
            bx_4.BackColor = vbGreen
    End If
End Function
ASKER CERTIFIED SOLUTION
Join our community to see this answer!
Unlock 1 Answer and 7 Comments.
Start Free Trial
Learn from the best

Network and collaborate with thousands of CTOs, CISOs, and IT Pros rooting for you and your success.

Andrew Hancock - VMware vExpert
See if this solution works for you by signing up for a 7 day free trial.
Unlock 1 Answer and 7 Comments.
Try for 7 days

”The time we save is the biggest benefit of E-E to our team. What could take multiple guys 2 hours or more each to find is accessed in around 15 minutes on Experts Exchange.

-Mike Kapnisakis, Warner Bros