Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Access > IHM
IHM Ce forum est dédié aux questions relatives à la création de formulaires et d'états, avec ou sans code VBA, et macros.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 23/01/2012, 21h40   #1
Invité de passage
 
Homme Gérard Content
Webmaster
Inscription : mai 2004
Messages : 7
Détails du profil
Informations personnelles :
Nom : Homme Gérard Content
Âge : 57
Localisation : Belgique

Informations professionnelles :
Activité : Webmaster
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : mai 2004
Messages : 7
Points : 2
Points : 2
Envoyer un message via MSN à Gerpat
Par défaut Changer la couleur de fond d'un champ par rapport au nombre de mois qui séparent la date entrée dans le champ

Bonjour ou bonsoir à toutes et à tous,
J'ai besoin de votre aide et de votre grand savoir car je dois créer une base de données pour mon club de tir. Les membres doivent nous fournir un extrait de leur casier judiciaire et nous devons veiller à ce que cet extrait soit renouvelé à temps (sinon le membre ne peut plus tirer). Dès lors, j’ai besoin d’attirer l’attention en changeant la couleur de fond du champ « date de l'extrait du casier judiciaire » par rapport au nombre de mois restant avant de changer l’extrait. Par exemple, s’il reste quatre mois avant le changement, la couleur de fond du champ devient orange et s’il reste deux mois, la couleur de fond passe au rouge . J’ai déjà cherché dans plusieurs forums et, bien sûr en faisant appel à notre ami Google, mais je ne trouve pas de solution.
Merci à l'avance de votre sollicitude.
Gerpat est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/01/2012, 22h22   #2
Modérateur
 
Homme René MAROT
Inscription : octobre 2005
Messages : 5 479
Détails du profil
Informations personnelles :
Nom : Homme René MAROT
Localisation : Canada

Informations forums :
Inscription : octobre 2005
Messages : 5 479
Points : 7 568
Points : 7 568
La mise en forme conditionnelle de champ devrait résoudre ton problème regarde de ce côté.

Comme c'est du A2010 essaye : bouton droit sur le champ pour voir si cela ne ferait pas parti des options de formatage.

A+
__________________
Vous voulez une réponse rapide et efficace à vos questions téchniques ? Ne les posez pas en message privé mais dans le forum, vous bénéficiez ainsi de la compétence et de la disponibilité de tous les contributeurs.
marot_r est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/01/2012, 16h08   #3
Invité de passage
 
Homme Gérard Content
Webmaster
Inscription : mai 2004
Messages : 7
Détails du profil
Informations personnelles :
Nom : Homme Gérard Content
Âge : 57
Localisation : Belgique

Informations professionnelles :
Activité : Webmaster
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : mai 2004
Messages : 7
Points : 2
Points : 2
Envoyer un message via MSN à Gerpat
Par défaut J'ai déjà essayé le mise ne forme conditionnelle sans succès

Bonjour,
Merci beaucoup à Marot_R pour la réponse, j'ai déjà essayé avec la mise en forme conditionnelle mais je ne sais pas comment faire pour intégrer les deux conditions pour que le champ passe de sa couleur par défaut à l'orange et puis au rouge selon le nombre de mois de la date de l'extrait .
C'est pour cette raison que j'ai pensé à du VBA pour solutionner mon problème.
Gerpat est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/01/2012, 23h33   #4
Modérateur
 
Homme René MAROT
Inscription : octobre 2005
Messages : 5 479
Détails du profil
Informations personnelles :
Nom : Homme René MAROT
Localisation : Canada

Informations forums :
Inscription : octobre 2005
Messages : 5 479
Points : 7 568
Points : 7 568
Autant que je me souviennes tu peux avoir environ trente conditions avec Access 2010 donc tu dois avoir un moyen d'en ajouter une par critère.

A+
__________________
Vous voulez une réponse rapide et efficace à vos questions téchniques ? Ne les posez pas en message privé mais dans le forum, vous bénéficiez ainsi de la compétence et de la disponibilité de tous les contributeurs.
marot_r est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/01/2012, 16h02   #5
Invité de passage
 
Homme Gérard Content
Webmaster
Inscription : mai 2004
Messages : 7
Détails du profil
Informations personnelles :
Nom : Homme Gérard Content
Âge : 57
Localisation : Belgique

Informations professionnelles :
Activité : Webmaster
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : mai 2004
Messages : 7
Points : 2
Points : 2
Envoyer un message via MSN à Gerpat
Par défaut Mise en forme conditionnelle

Bonjour et merci pour la réponse.

J'ai en effet essayé de faire cela avec une mise ne forme conditionnelle mais cela ne fonctionne pas, j'ai mis deux conditions, en vain. Je n'arrive pas à faire en sorte que l'on doit tenir compte de l'ancienneté de la date et de travailler en mois (quand la date est plus ancienne que par exemple 10 mois, le fond passe à l'orange et au rouge si la date est plus ancienne que 11 mois).
Je pensais qu'il aurait été plus facile de réaliser cela avec VBA mais je crois que je vais devoir trouver autre chose.

Merci encore
Gerpat est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/01/2012, 18h47   #6
Modérateur
 
Homme René MAROT
Inscription : octobre 2005
Messages : 5 479
Détails du profil
Informations personnelles :
Nom : Homme René MAROT
Localisation : Canada

Informations forums :
Inscription : octobre 2005
Messages : 5 479
Points : 7 568
Points : 7 568
Je n'ai pas 2010 sous la main mais avec 2007 voilà comment je ferai :

Mise en forme conditionnelle
Sélectionner Expression
mettre datediff("m",[NomTonChampDate],Date())>=11

Cela devrait déclencher le formatage si la différence est supérieure ou égale à 11.

Si tu as plusieurs condition l'ordre est important car Access s'arrète dés qu'une des conditions est remplie.


Par exempe si tu testes
  1. tonChamp < 100
  2. tonChamp < 10

avec 9, la seconde condition ne sera jamais évaluée car 9 est inférieur à 10. Donc il convient de faire
  1. tonChamp < 10
  2. tonChamp < 100

A+
__________________
Vous voulez une réponse rapide et efficace à vos questions téchniques ? Ne les posez pas en message privé mais dans le forum, vous bénéficiez ainsi de la compétence et de la disponibilité de tous les contributeurs.
marot_r est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/01/2012, 21h35   #7
Invité de passage
 
Homme Gérard Content
Webmaster
Inscription : mai 2004
Messages : 7
Détails du profil
Informations personnelles :
Nom : Homme Gérard Content
Âge : 57
Localisation : Belgique

Informations professionnelles :
Activité : Webmaster
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : mai 2004
Messages : 7
Points : 2
Points : 2
Envoyer un message via MSN à Gerpat
Par défaut mise en forme conditionnelle

Bonsoir,

Encore mille mercis pour la réponse.
Je viens d'essayer avec la mise en forme conditionnelle mais il y a toujours un petit problème.
Voici le code que j'ai formulé pour passer à l'orange:
Code :
DiffDate("m";[extrait casier judiciaire];Date())>=10
et le code pour passer au rouge:
Code :
DiffDate("m";[extrait casier judiciaire];Date())>=11
Pour l'orange, cela fonctionne bien, par contre, le passage au rouge ne se fait pas et le champ reste en orange. Il semble pourtant que nous soyons dans le bon puisque cela fonctionne avec l'orange.
Merci pour la patience.
Gerpat est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/01/2012, 08h01   #8
Rédacteur/Modérateur
 
Avatar de Domi2
 
Homme
Inscription : juin 2006
Messages : 6 227
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 52
Localisation : Suisse

Informations professionnelles :
Secteur : Administration - Collectivité locale

Informations forums :
Inscription : juin 2006
Messages : 6 227
Points : 9 939
Points : 9 939
Envoyer un message via Skype™ à Domi2
Bonjour,

Je n'ai pas Access 2010 et je n'utilise pas beaucoup la mise en forme conditionnelle, mais de la façon dont tu as formulé tes conditions, 11 est plus grand que 10, donc il doit s'arrêter sur la première condition.

Essaie uniquement avec = 10 et = 11.

Domi2
__________________
Vous avez des montres, nous avons le temps ! (citation attribuée à L.-S. Senghor)

Ici, on ne perd pas de temps ! On en passe...


Access : créer des codes-barres 128 en VBA
Access : les commandes intégrées des menus

Ce message (ou un autre) vous a aidé ? Votez pour lui avec
Domi2 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/01/2012, 21h41   #9
Invité de passage
 
Homme Gérard Content
Webmaster
Inscription : mai 2004
Messages : 7
Détails du profil
Informations personnelles :
Nom : Homme Gérard Content
Âge : 57
Localisation : Belgique

Informations professionnelles :
Activité : Webmaster
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : mai 2004
Messages : 7
Points : 2
Points : 2
Envoyer un message via MSN à Gerpat
Par défaut procédure événementielle

Bonsoir,

Je viens de réussir ce que je désirais faire.
J'ai fais une procédure événementielle dont voici le code:

Code :
1
2
3
4
5
6
7
8
9
10
11
12
Private Sub extrait_casier_judiciaire_GotFocus()
If Date - [extrait casier judiciaire] < 300 Then
            extrait_casier_judiciaire.BackStyle = 1
            extrait_casier_judiciaire.BackColor = vbGreen
    ElseIf Date - [extrait casier judiciaire] >= 300 And Date - [extrait casier judiciaire] < 329 Then
            extrait_casier_judiciaire.BackStyle = 1
            extrait_casier_judiciaire.BackColor = vbYellow
    ElseIf Date - [extrait casier judiciaire] >= 330 Then
            extrait_casier_judiciaire.BackStyle = 1
            extrait_casier_judiciaire.BackColor = vbRed
    End If
End Sub
Et ça fonctionne!
Je crois que je peux considérer ce problème comme étant résolu, mais je ne sais pas comment faire.
Un tout grand merci pour l'aide, vraiment sympa. Au plaisir, A+
Gerpat est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 20h19.


 
 
 
 
Partenaires

Hébergement Web