2013-01-16 2 views
1

Je dois mettre en forme conditionnelle 24 zones de texte avec 2 règles chacune. Chaque règle est légèrement différente, en fonction du mois. Existe-t-il un moyen de taper mes règles de format conditionnel dans un seul écran afin de ne pas avoir à cliquer sur autant de boutons? De plus, cela permettrait d'économiser un temps considérable si j'avais même besoin de modifier les règles. Psuedocode:Access 2010 - Mise en forme conditionnelle de nombreux champs

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) 

Répondre

1

Vous pouvez utiliser le FormatConditions.Add Method en place de votre pseudo-code. Avec « Form3 » ouvert en mode Création, je l'ai fait ce qui suit dans la fenêtre immédiate:

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 

inspecter ensuite la condition de format de la propriété forme m'a donné ce ...

Conditional Formatting screen shot

Pour 24 contrôles, vous pouvez créer une procédure pour appliquer les formats conditionnels. Modifiez la procédure lorsque les règles changent. Ou stockez les règles dans une table et demandez à la procédure de lire les règles de la table.

+0

Merci de m'avoir envoyé dans la bonne direction. J'ai fini par utiliser VBA dans l'événement OnPrint pour la section qui m'intéressait. Je viens d'écrire mes règles dans le code, puis de définir le .BackColor ... plutôt que d'utiliser FormatConditions. – Chad

Questions connexes