Evaluating Expressions with Variable Field Names

P

Pascal.H

I have: a report with 36 fields with similar names. e.g., PCT01, PCT02,
PCT03, ...

I want: to loop through the fields, changing the format to bold if the value
of the field < .5.

Code snipet:
For i = 0 To 36
strField = PCT & IIf(i < 10, "0" & i, i)
If Me.strField / 100 < 0.5 Then
Me.strField.FontWeight = 900
Else
Me.strField.FontWeight = 400
End If
Next i
 
A

Allen Browne

You can use:
Me(strField)
which is a shortcut for:
Me.Controls(strField)

But could be point out that whenever you have repeating fields (such as
Pct01, Pct02, ...) it always means you have designed a spreadsheet and not a
database? In a relational database, you would use many *records* in a
related table, rather than many repeating fields in one table. Post back if
you need more info about that.
 
J

John Spencer

For i = 0 To 36
'Change the line below
strField = "PCT" & Format(i,"00")
If Me.strField / 100 < 0.5 Then
Me.strField.FontWeight = 900
Else
Me.strField.FontWeight = 400
End If
Next i


John Spencer
Access MVP 2002-2005, 2007-2008
The Hilltop Institute
University of Maryland Baltimore County
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top