OVH Cloud OVH Cloud

Mise en forme etat

2 réponses
Avatar
catherine.soranzo
Bonjour à tous,

J'ai recueilli sur ce forum un certain nombre d'infos sur la mise en
forme conditionnelle dans un etat. Malheureusement, rien ne marche.
Je suis en Access 97.
Voici le code VBA que j'ai lié tantôt à l'évènement "au formatage"
tantôt "sur impression" sans succès :

If Me!Code_Decalage > "00" And Me!ETA_Souhaitee > Me!ETA_Reelle Then
Me!Ecart_ETA.BackColor = RGB(255, 0, 0)
End If

Est-ce mon code qui ne va pas ou Access 97 qui ne reconnait pas cette
méthode ?
Car en fait le message d'erreur est "Membre de Méthode ou donnée
introuvable" (Backcolor ou Forecolor que j'ai également essayé est
surligné)

Petite précision : l'Etat est sous forme de tableau et je voudrais
qu'en fonction des données des colonnes "Code Decalage", "ETA
Souhaitee" et "ETA Reelle" la couleur de fond ou de texte de la
colonne "Ecart_ETA" change.

Merci d'avance à ceux qui pourront m'aider.
A+
Catherine

2 réponses

Avatar
3stone
Bonjour,

| Je suis en Access 97.
| Voici le code VBA que j'ai lié tantôt à l'évènement "au formatage"
| tantôt "sur impression" sans succès :
|
| If Me!Code_Decalage > "00" And Me!ETA_Souhaitee > Me!ETA_Reelle Then
| Me!Ecart_ETA.BackColor = RGB(255, 0, 0)
| End If


En admettant que ton expression est valide... et que aies placé
ton code "Au formatage" de la section détail...
tu peux par contre avoir une confussion entre le champ et le contrôle.

Access, par défaut, donne au contrôle le même nom que le champ.
Pour éviter ces problèmes, je m'empresse toujours de modifier
les noms des contrôles.

Sélectionne le contrôle, appelle les propriétés et regarde les onglets
Données- Source contrôle...
Autres - Nom...

dans ton cas, tu as sûrement deux fois "Ecart_ETA"

Modifie donc le nom, en ajoutant "txt" => "txtEcart_ETA"

Dès maintenant, lorsque tu t'adresse à la valeur du champ,
tu utilise "Ecart_ETA" et pour t'adresser au contrôle,
pour le backcolor par exemple, tu utilise "txtEcart_ETA"

Ceci est a appliquer dès qu'il y a risque de confussion.


Ca marche ?


--
A+
Pierre (3stone) Access MVP
-------------------------------------------------------
Bien démarrer ? c'est ici http://users.skynet.be/mpfa/
( Je ne réponds pas aux emails qui concernent Access )
-------------------------------------------------------
Avatar
catherine.soranzo
Salut "3Stone",

Oui, ça marche et c'est super, comme d'hab !

Merci beaucoup
A+
Catherine


"3stone" wrote in message news:<3f7c10b9$0$31730$...
Bonjour,

| Je suis en Access 97.
| Voici le code VBA que j'ai lié tantôt à l'évènement "au formatage"
| tantôt "sur impression" sans succès :
|
| If Me!Code_Decalage > "00" And Me!ETA_Souhaitee > Me!ETA_Reelle Then
| Me!Ecart_ETA.BackColor = RGB(255, 0, 0)
| End If


En admettant que ton expression est valide... et que aies placé
ton code "Au formatage" de la section détail...
tu peux par contre avoir une confussion entre le champ et le contrôle.

Access, par défaut, donne au contrôle le même nom que le champ.
Pour éviter ces problèmes, je m'empresse toujours de modifier
les noms des contrôles.

Sélectionne le contrôle, appelle les propriétés et regarde les onglets
Données- Source contrôle...
Autres - Nom...

dans ton cas, tu as sûrement deux fois "Ecart_ETA"

Modifie donc le nom, en ajoutant "txt" => "txtEcart_ETA"

Dès maintenant, lorsque tu t'adresse à la valeur du champ,
tu utilise "Ecart_ETA" et pour t'adresser au contrôle,
pour le backcolor par exemple, tu utilise "txtEcart_ETA"

Ceci est a appliquer dès qu'il y a risque de confussion.


Ca marche ?