2013-01-16 20 views
1

我需要条件格式24个文本框,每个文本框有2个规则。每个规则稍微有点不同,以月份为基础。有什么方法可以在一个屏幕中输入我的条件格式规则,所以我不必点击这么多按钮?另外,如果我甚至需要编辑规则,这将节省相当多的时间。伪代码:Access 2010 - 条件格式化许多字段

Style1 = FontFill.Red 
Style2 = FontFill.Yellow 

txtField1.ConditionalFormatting.Add("<rule text>", Style1) 
txtField1.ConditionalFormatting.Add("<rule text>", Style2) 

txtField2.ConditionalFormatting.Add("<rule text>", Style1) 
txtField2.ConditionalFormatting.Add("<rule text>", Style2) 

回答

1

您可以使用FormatConditions.Add Method代替您的伪代码。随着“Form3”设计视图中打开,我没有立即窗口如下:

Forms("Form3").Controls("txtNote").FormatConditions.Add acFieldValue, acBetween, 10, 100 
Forms("Form3").Controls("txtNote").FormatConditions(0).ForeColor = vbRed 
' confirm the FormatCondition is enabled ... 
? Forms("Form3").Controls("txtNote").FormatConditions(0).Enabled 
True 

然后从表单属性检查格式条件给了我这个...

Conditional Formatting screen shot

对于24控件,您可以创建一个应用条件格式的过程。规则更改时修改过程。或者将规则存储在一个表中,让程序从表格中读取规则。

+0

谢谢你送我正确的方向。我最终在OnPrint事件中使用了VBA,我感兴趣的部分是在代码中编写规则,然后设置.BackColor ...而不是使用FormatConditions。 – Chad