External References in Conditional Formatting Expression
Normally, we use a Form/Report Textbox value in Conditional Formatting expressions, to set the Font or Background color of a control.
FIELD VALUE IS BETWEEN 1 and 10 – whatever formatting you define will be displayed on the selected field, provided the field value is between 1 and 10.
FIELD HAS FOCUS – the conditional formatting become visible when the field become active.
EXPRESSION IS [ID]=5 OR [LastName] = "Nancy" – formatting is applied to a field, depending on the current values of two other fields used in the expression.
The key values in capital letters are selected from a dropdown control on the Conditional Formatting Dialog Control. We will take the last example for our new method of reference and let us see how it can be used differently.
In the above expression, both [ID] and [LastName] controls are on the same Form/Report and refers to the current record values on the Form/Report. This is the normal procedure.
But, both values referenced in the expression can come entirely from other objects like: from a control of another open Form or from a Field of another Table. As far as the table is concerned it is not necessary to keep the table open like the other Form, because we are going to use the Dlookup() Function in the expression to pick the value from the table.
When the above example is re-written to reference external field values it will look like the expression given below.
EXPRESSION IS Forms![Orders]![OrderID] = Dlookup("Order_ID","tbl_OrderParam")
Assume that the above Conditional Formatting expression is written on a Field (say the Amount field) of frm_myForm.
If the current record OrderID value of Orders Form (a second form in open mode) and the Order_ID value of tbl_OrderParam Table (the expression assumes that the Parameter Table has only one record in it) matches then apply the defined conditional format on the active Form’s (frm_myForm) Amount Field.
Try it out yourself and find out how it works?