IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

IHM Discussion :

Mise en forme conditionnelle


Sujet :

IHM

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2009
    Messages : 22
    Points : 8
    Points
    8
    Par défaut Mise en forme conditionnelle
    Bonjours
    Je cherche à mettre une couleur de fond d'un label avec la mise en forme conditionnelle ,seulement s'est limité a 3 conditions et il m'en faudrait 5,j'ai lu le tuto de Philippe Jochmans,mais s'est un peu compliqué pour moi,peut-on faire plus simple?

    Cordialement

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour

    Il faut passer à Office 2010 pour avoir plus de conditions (49 de mémoire).

    Ton formulaire est en mode continu ? Si oui, je ne vois pas de solutions, si non, avec un peu de VBA on pourrait faire quelque chose, merci donc de préciser le contexte.

    Philippe

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2009
    Messages : 22
    Points : 8
    Points
    8
    Par défaut
    Rebonsoir

    Dans un formulaire,j'évalue mes élèves sur des compétences du référentiel ,donc j'ai créé une liste de choix ,il y a 5 choix disponible(:acquis,acquis avec peu d'aide ext....)et j'aimerais dans mon état qui me donne les résultats que le fond du label des résultats se colore suivant le choix d'évaluation.

    Cordialement

  4. #4
    Modérateur

    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    15 365
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2005
    Messages : 15 365
    Points : 23 835
    Points
    23 835
    Par défaut
    En standard non, c'est 3 conditions sauf si tu passes à Access 2010 qui en offre beaucoup plus.

    Tes labels sont-ils sur un formulaire unique ou en mode continu ?

    Si tu pouvais poster une image de ce que tu attends, cela aiderait à trouver des solutions alternatives.

    A+

  5. #5
    Futur Membre du Club
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2009
    Messages : 22
    Points : 8
    Points
    8
    Par défaut
    Sur cette capture d'écrans on voie déjà des labels en couleur ,mais j'ai 5 choix donc 5 couleurs
    François
    Fichiers attachés Fichiers attachés

  6. #6
    Futur Membre du Club
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2009
    Messages : 22
    Points : 8
    Points
    8
    Par défaut
    J'ai trouver une solution sur la toile,je l'ai essayé ,sa marche !!
    1. - Dans votre table où le champ à colorier est présent, il vous faut
    ajouter un champ IDCouleur de type numérique qui représentera la couleur
    idoine.

    2. - Dans une nouvelle table TBLCouleurs, vous ajoutez 3 champs :
    - IDCouleur : Numérique
    - Couleur : Objet OLE
    - Nom Couleur : Texte

    3. – Depuis MSPaint ou autre, vous dessinez autant de rectangles d'environ
    200 x 30 pixels que de couleurs unies nécessaires.
    Vous sauvegardez ces images au format BMP ou JPEG avec un nom respectif pour
    vous y retrouver.

    4. - Dans la table TBLCouleurs, vous insérez un Objet « A partir d'un
    fichier » puis vous cliquez sur « Parcourir » pour sélectionner l'image
    concernée et affectez le code IDCouleur correspondant (de 1 à n) pour chacune
    des couleurs

    5. - Vous modifiez (UPDATE WHERE ?) la table concernée, vous mettez à jour
    les enregistrements de telle sorte que le champ IDCouleur reçoive la couleur
    appropriée (de 1 à n) et pour les nouveaux, vous ferez en sorte de pouvoir
    choisir la couleur depuis une liste déroulante foncée sur la table
    TBLCouleurs dans le formulaire.

    6. - Dans votre requête qui est attachée à votre état, vous faîte une
    jointure :

    ....FROM TBLcouleurs INNER JOIN VotreTable ON TBLcouleurs.IDCouleur =
    VotreTable.IDCouleur... [WHERE] [ORDER BY]

    7. - Dans votre état, vous ajoutez le champ « Couleur » que vous positionnez
    en arrière plan sous le champ « À colorier » avec une taille strictement
    identique.
    8. - Vous rendez le(s) champ(s) à colorier transparent(s) et vous affectez
    une bordure transparente au champ Couleur.

    8. - Vous faîtes un aperçu et vos champs seront colorés selon le code
    couleur de la table…
    Solution proposé par "argyronet"

  7. #7
    Invité
    Invité(e)
    Par défaut
    Salut

    Cette solution me dit quelque chose, mais de mémoire elle ne fonctionne pas lorsque l'on est plusieurs utilisateurs sur l'application, c'est pour cela que je n'y pense pas, car je réfléchis toujours multi.

    Si tout est bon, merci de cliquer sur le bouton

    Philippe

  8. #8
    Futur Membre du Club
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2009
    Messages : 22
    Points : 8
    Points
    8
    Par défaut
    Effectivement ,en l'appliquant aux autres évaluations sa ne marche plus ,helas
    Donc,je résume se que je suis en train de faire:
    Il y a 4 évaluations,chaque évaluations à 5 possibilités (liste de choix) et chaque possibilité a une couleur définie qui apparaitra dans l'état ou l'on visualisera les résultats

  9. #9
    Membre expert
    Avatar de FreeAccess
    Homme Profil pro
    Un monde ou prendre est plus facile qu'apprendre.
    Inscrit en
    Mars 2006
    Messages
    2 745
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Un monde ou prendre est plus facile qu'apprendre.

    Informations forums :
    Inscription : Mars 2006
    Messages : 2 745
    Points : 3 834
    Points
    3 834
    Par défaut
    Bonjour,

    Je ne vois pas le problème qu'il y a pour réaliser ce que tu demande..

    Si on résume les informations en notre possession:
    Dans un formulaire,j'évalue mes élèves sur des compétences...(:acquis,acquis avec peu d'aide ext....)...dans mon état.....que le fond du label des résultats se colore suivant le choix d'évaluation
    .... et pour la "construction" des données...
    ...j'ai créé une liste de choix ,il y a 5 choix disponible(:acquis,acquis avec peu d'aide ext....)
    Pour exemple: La table [T_Evaluation] contient les champs suivants:

    NomEleve............... Identifiant de l'élève
    NumEvaluation....... (évalution n° 1 - évaluation n° 2...etc.)
    NiveauEvaluation.... ici un chiffre qui représente le niveau, de 1 à 5

    ..ou NiveauEvaluation égal à:
    - 1 = acquis
    - 2 = acquis avec peu d'aide
    - 3 = non acquis
    - 4 = acquis avec beaucoup d'aide
    - 5 = non évalué

    ...ce qui te donnera...

    JEAN....1....1
    JEAN....2....2
    JEAN....3....1
    JEAN....4....5
    NOEL....1....3
    NOEL....2....1
    ......

    Il ne te reste plus qu'a baser ton état sur la table [T_Evaluation] et de définir ta "mise en forme" directement à partir de l'événement "Au formatage" de la zone détail de l'état..:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    Private Sub Détail_Format(Cancel As Integer, FormatCount As Integer)
    'Si niveau est égale à 1 (acquis), le label est VERT
    If Me.NiveauEvaluation = 1 Then
        Me.Image.Picture = CurrentProject.Path & "/vert.png"
    'Si niveau est égale à 2 (acquis peu d'aide), le label est ORANGE
    ElseIf Me.NiveauEvaluation = 2 Then
        Me.Image.Picture = CurrentProject.Path & "/orange.png"
    'Si niveau est égale à 3 (avec beaucoup d'aide), le label est ROUGE
    ElseIf Me.NiveauEvaluation = 3 Then
        Me.Image.Picture = CurrentProject.Path & "/rouge.png"
    'Si niveau est égale à 4 (non acquis), le label est GRIS
    ElseIf Me.NiveauEvaluation = 4 Then
        Me.Image.Picture = CurrentProject.Path & "/gris.png"
    'Si niveau est égale à 5 (non évalué), le label est JAUNE
    ElseIf Me.NiveauEvaluation = 5 Then
        Me.Image.Picture = CurrentProject.Path & "/jaune.png"
    End If
    End Sub
    ....ceci n'est qu'un exemple, il faut l'adapter à ton application.....
    Images attachées Images attachées  

  10. #10
    Invité
    Invité(e)
    Par défaut
    Formulaire ou état

  11. #11
    Membre expert
    Avatar de FreeAccess
    Homme Profil pro
    Un monde ou prendre est plus facile qu'apprendre.
    Inscrit en
    Mars 2006
    Messages
    2 745
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Un monde ou prendre est plus facile qu'apprendre.

    Informations forums :
    Inscription : Mars 2006
    Messages : 2 745
    Points : 3 834
    Points
    3 834
    Par défaut
    Bonjour Philippe...

    Il suffit de lire:
    chaque possibilité a une couleur définie qui apparaitra dans l'état ou l'on visualisera les résultats
    ....

  12. #12
    Invité
    Invité(e)
    Par défaut
    OK

    Mais comme j'ai lu cela
    Citation Envoyé par FRANZ38 Voir le message
    j'ai lu le tuto de Philippe Jochmans,mais s'est un peu compliqué pour moi,peut-on faire plus simple?
    Hors ce tuto ne s'applique qu'aux formulaires, d'où mon erreur, mea culpa.

    Philippe

  13. #13
    Membre expert
    Avatar de FreeAccess
    Homme Profil pro
    Un monde ou prendre est plus facile qu'apprendre.
    Inscrit en
    Mars 2006
    Messages
    2 745
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Un monde ou prendre est plus facile qu'apprendre.

    Informations forums :
    Inscription : Mars 2006
    Messages : 2 745
    Points : 3 834
    Points
    3 834
    Par défaut
    En complément....

    Dans mon exemple, j'utilise des contrôles Image pour afficher une couleur de fond différente...

    Dans ton cas, puisque tu utilise des étiquettes (label), tu modifie le code en conséquent....:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Private Sub Détail_Format(Cancel As Integer, FormatCount As Integer)
    'Si niveau est égale à 1 (acquis), le label est VERT
    If Me.NiveauEvaluation = 1 Then
        Me.lblNiveau.BackColor = vbGreen
    'Si niveau est égale à 2 (acquis peu d'aide), le label est VIOLET
    ElseIf Me.NiveauEvaluation = 2 Then
        Me.lblNiveau.BackColor = vbMagenta
    'Si niveau est égale à 3 (avec beaucoup d'aide), le label est ROUGE
    ElseIf Me.NiveauEvaluation = 3 Then
        Me.lblNiveau.BackColor = vbRed
    ....
    Ne pas oublier de mettre la propriété "Style fond" de l'étiquette sur Standard....

Discussions similaires

  1. mise en forme conditionnelle et vba
    Par malabar92 dans le forum Access
    Réponses: 4
    Dernier message: 26/04/2006, 14h18
  2. Mise en forme conditionnelle
    Par the big ben 5 dans le forum Composants VCL
    Réponses: 4
    Dernier message: 23/12/2005, 15h20
  3. [VBA][Excel] mise en forme conditionnelle
    Par titflocon dans le forum Access
    Réponses: 9
    Dernier message: 19/12/2005, 10h13
  4. Réponses: 4
    Dernier message: 15/11/2005, 18h53
  5. Mise en forme conditionnelle en VBA / Cut-Paste
    Par priest69 dans le forum IHM
    Réponses: 4
    Dernier message: 03/09/2005, 13h54

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo