Bonjour à Tous,
Je viens vous faire profiter d’un petit bout de code que je viens de créer pour une appli en cours.
Objectif :
Dans un service qualité, ils font des saisies par défaut, hors ces défauts ont chacun une couleur (cette couleur est reprise dans des graphiques). Stocker la valeur d’une couleur (de type long) dans une table n’est pas compliqué.
Il fallait donc créer un formulaire pour créer, modifier ou supprimer des défauts, et sélectionner la couleur.
Problème :
Les listes fournies avec Access ne permettent pas de gérer des couleurs, interdiction d’utiliser le MsFlexGrid.
On peut dire je vais passer par un formulaire avec la mise en forme conditionnelle, hors celle-ci ne permet que trois conditions, donc ce n’est pas possible.
Solution :
La solution que vous trouverez dans l’exemple ci-joint reprend le principe suivant :
1 – J’ai une table avec mes défauts (tbl_Defaut)
2 – A partir de cette table je remplis un formulaire en mode «*Formulaire Unique*», je mets mes enregistrements les uns en dessous des autres. Le remplissage se fait par programmation, en fait on crée des contrôles en fonction de ce qu’il y’a dans la table (le code se trouve dans le module «*mod_ListBox*».
3 – Ce formulaire est mis comme sous-formulaire d’un autre, de tel manière qu’il apparaît comme une listebox.
Exemple*:
Vous trouverez dans le fichier ci-joint un exemple. Au lancement du fichier (format Access 2000), vous aurez un formulaire, vous pourrez tester. (les noms sont bien sûr bidon).
Bien sûr vous pouvez étendre et avoir la ligne entière de couleurs.
Inconvénient de cette méthode.
Le nombre d’éléments dans la liste est limité, en effet étant donné le principe de conception nous sommes limités à la taille d’un formulaire.
Un formulaire a une hauteur maximum de 55 cm, mes lignes ont une hauteur de 0.45 cm, ce qui fait que vous ne pourrez mettre que 122 lignes, il faudra dont le réservé à de petites listes.
Si vous avez des questions, n’hésitez pas, mais sur le FORUM, pas par MP (je ne réponds pas aux questions techniques).
Starec
Partager