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 dans un formulaire affiché en données


Sujet :

IHM

  1. #1
    Membre du Club
    Homme Profil pro
    Responsable de projet fonctionnel
    Inscrit en
    Mars 2014
    Messages
    80
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Belgique

    Informations professionnelles :
    Activité : Responsable de projet fonctionnel

    Informations forums :
    Inscription : Mars 2014
    Messages : 80
    Points : 61
    Points
    61
    Par défaut Mise en forme conditionnelle dans un formulaire affiché en données
    Bonjour à tous,

    J'utilise Access 2010. J'ai crée un formulaire qui présente les données sous forme de liste. J'aurai voulu ajouter une mise en forme conditionnelle basé soit sur le résultat d'une requête ou d'une autre table.

    J'ai donc essayé d'entrer avec le générateur une formule du type: [R_Pays]![Sigle]

    L'idée est donc de pouvoir mettre une couleur bleu si dans le formulaire le pays fait partie d'une liste que j'ai généré à partir d'une requête.

    Je précise que je ne fais pas de VBA et que j'essaye juste de travailler avec le générateur.

    J'(ai essayé de lire les tuto mais je n'ai pas trouvé sur le site ou forum.

    Encore merci.

  2. #2
    Rédacteur/Modérateur
    Avatar de loufab
    Homme Profil pro
    Entrepreneur en solutions informatiques viables et fonctionnelles.
    Inscrit en
    Avril 2005
    Messages
    12 015
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Entrepreneur en solutions informatiques viables et fonctionnelles.
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2005
    Messages : 12 015
    Points : 24 555
    Points
    24 555
    Par défaut
    Bonjour,

    Utilise la fonction de domaine Dlookup() (cf le tuto sur le sujet) pour vérifier que le pays existe dans cette requête.

    Un nom de requête comme ça n'est pas interprété

    Cordialement,
    Détecter les modifications formulaire Cloud storage et ACCESS
    Classe MELA(CRUD) Opérateur IN et zone de liste Opérateur LIKE
    Visitez mon Blog
    Les questions techniques par MP ne sont pas lues et je ne pratique pas la bactériomancie

  3. #3
    Membre du Club
    Homme Profil pro
    Responsable de projet fonctionnel
    Inscrit en
    Mars 2014
    Messages
    80
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Belgique

    Informations professionnelles :
    Activité : Responsable de projet fonctionnel

    Informations forums :
    Inscription : Mars 2014
    Messages : 80
    Points : 61
    Points
    61
    Par défaut
    Salut,
    Merci pour la réponse. J'ai commencé à lire et c'est très intéressant. Je comprends le principe. Avec cette fonction, j'aurai un retour d'une valeur mais est-ce possible de modifier la mise en forme avec cette fonction.

    Si je comprends bien, j.incorpore la fonction et elle va la vérifier au premier enregistrement contenu dans ma table ou requête. Si l'enregistrement correspond, est-il possible de moduler la couleur du champ ?

    Merci d'avance.

  4. #4
    Rédacteur/Modérateur
    Avatar de loufab
    Homme Profil pro
    Entrepreneur en solutions informatiques viables et fonctionnelles.
    Inscrit en
    Avril 2005
    Messages
    12 015
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Entrepreneur en solutions informatiques viables et fonctionnelles.
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2005
    Messages : 12 015
    Points : 24 555
    Points
    24 555
    Par défaut
    Evidemment on peut faire ce que l'on veut avec cette fonction.

    Il faut régler comme ceci le gestionnaire de mise en forme conditionnelle :

    type de règle : vérifier les valeurs...
    Valeur du champ
    égal à
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    dlookup("champ retourné";"table ou requête";"[champ retourné]=[nom de la zone de texte]")
    si il ne trouve pas le nom de la zone de texte, précise-lui en mettant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    dlookup("champ retourné";"table ou requête";"[champ retourné]=forms.nomduform.nomdelazone")
    Détecter les modifications formulaire Cloud storage et ACCESS
    Classe MELA(CRUD) Opérateur IN et zone de liste Opérateur LIKE
    Visitez mon Blog
    Les questions techniques par MP ne sont pas lues et je ne pratique pas la bactériomancie

  5. #5
    Membre du Club
    Homme Profil pro
    Responsable de projet fonctionnel
    Inscrit en
    Mars 2014
    Messages
    80
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Belgique

    Informations professionnelles :
    Activité : Responsable de projet fonctionnel

    Informations forums :
    Inscription : Mars 2014
    Messages : 80
    Points : 61
    Points
    61
    Par défaut
    Merci beaucoup. Je vais tester ça ce week-end.

    Est-ce que je peux encore abuser de la clarté de tes explications pour un autre problème :-)

    Je travaille avec 2 services. Le premier service vérifie un document. Sur ce document est indiqué le nombre d'annexe. Sur base de cette analyse, il indique au deuxième service ce nombre ainsi que l'annexe qui doit obligatoirement est présente dans le dossier.
    Au départ, je voulais prévoir plusieurs champs avec par exemple annexe 1, annexe 2, annexe 3 mais ce nombre d'annexe n'est pas une constante. Le nombre peut donc être 1 à n. J'ai donc pensé travailler avec une deuxième table dont le nombre de ligne serait généré automatiquement par ce qui inscrit dans la table T-Document.

    J'aurai donc une table T_Doc avec ID_Doc, quelques champs, un champ qui indique le nombre d'annexes et enfin un champ qui indique quelle annexe est obligatoire pour ce dossier. Il y aurait ensuite une deuxième table T_Annexe avec une ID_annexe, une ID Doc qui serait multipliée en fonction du nombre indiqué avant. Le service n'aurait alors plus qu'à répondre par oui/non dans un dernier champ.

    Exemple:
    Le premier service vérifie le doc et encode via un formulaire les infos de celui-ci et note que 5 annexes sont présentes et que l'annexe 2 est obligatoire. Le deuxième service ouvre un formulaire et voit que 5 annexes doivent être là et que l'annexe 2 est obligatoire. Ils doivent simplement cocher oui/non.
    Selon moi, ma table T_Annexe devrait alors contenir 5 X la même ligne avec comme référence la clef primaire de ID_Doc

    J'avais déjà posé la question et on m'avait parlé d'utilisé une requête insert mais j'ai l'impression qu'il y a moyen de faire plus simple.

    Si tu sais encore m'aider ce serait super cool.

    Merci d'avance.

  6. #6
    Rédacteur/Modérateur
    Avatar de loufab
    Homme Profil pro
    Entrepreneur en solutions informatiques viables et fonctionnelles.
    Inscrit en
    Avril 2005
    Messages
    12 015
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Entrepreneur en solutions informatiques viables et fonctionnelles.
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2005
    Messages : 12 015
    Points : 24 555
    Points
    24 555
    Par défaut
    Une requête insert c'est très bien.

    On peut la déclencher plusieurs fois en incrémentant le N° de l'annexe.

    Exemple :

    Le formulaire Document et un sous formulaire sous forme d'une liste toute simple contenant le N° de 'annexe et une case à cocher pour chaque ligne (obligatoire oui/non)

    un bouton permettant de générer les lignes d'annexes avec derrière du code vba avec la requête insert et la récupération du plus grand n° d'annexe (au cas ou on ajoute des annexes à des existantes).
    un message (input() ) demande combien d'annexe à générer. on s'en sert pour la boucle de la requete et l'incrément du N° d'annexe.

    Cordialement,
    Détecter les modifications formulaire Cloud storage et ACCESS
    Classe MELA(CRUD) Opérateur IN et zone de liste Opérateur LIKE
    Visitez mon Blog
    Les questions techniques par MP ne sont pas lues et je ne pratique pas la bactériomancie

  7. #7
    Membre du Club
    Homme Profil pro
    Responsable de projet fonctionnel
    Inscrit en
    Mars 2014
    Messages
    80
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Belgique

    Informations professionnelles :
    Activité : Responsable de projet fonctionnel

    Informations forums :
    Inscription : Mars 2014
    Messages : 80
    Points : 61
    Points
    61
    Par défaut
    Bonsoir,
    Déjà un grand merci. Voilçà déjà de la bonne info quand j'aurai bien avancé...

    Je vais encore profiter de ta science.

    A mon avis, je fais une erreur qui est grosse comme une maison mais je tourne en rond...

    J'ai crée ma table T_Entreprise avec un ID_Entreprise + autres champs (adresse, téléphone,...) et une deuxième T_commande avec un ID_Commande et la clef étrangère ID_entreprise. J'ai lié les tables par le ID_entreprise avec une intégrité référentielle.

    Ma table T_Entreprise contient 10 noms et cela va se limiter à cà pour le moment.

    Comme je voulais créer un formulaire basé sur les 2 tables, j'ai commencé par créer une requête qui contient les ID + les champs dont j'ai besoin. Ensuite, je base mon formulaire sur cette requête. Je fais un test d'encodage et cela marche mais quand je vais voir dans ma table T_Entreprise, je vois apparaître une ligne supplémentaire avec le même nom d'entreprise.

    J'ai donc voulu créer la clef primaire sur les noms des entreprises mais alors j'ai le message "Modif non effectuées" risque de doublons dans chanmps d'index,...)

    Je sais que c'est le principe de base de l'intégrité référentielle donc déso de poser cette question...

    Merci d'avance.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 2
    Dernier message: 18/12/2012, 16h06
  2. Réponses: 7
    Dernier message: 19/06/2011, 05h56
  3. Réponses: 12
    Dernier message: 10/02/2009, 21h43
  4. Mise en forme conditionnelle dans un formulaire
    Par moilou2 dans le forum IHM
    Réponses: 1
    Dernier message: 22/02/2008, 18h13
  5. Réponses: 1
    Dernier message: 25/01/2008, 10h17

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