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 :

Afficher un mot dans une zone de texte sous conditions


Sujet :

IHM

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Février 2008
    Messages
    293
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2008
    Messages : 293
    Points : 95
    Points
    95
    Par défaut Afficher un mot dans une zone de texte sous conditions
    Bonjour à tous
    J'aimerai parfaire une Bd sous Access 2000
    J'ai un formulaire avec 2 colonnes(Dépenses) et (Recettes)
    puis une zone de texte (Différence) qui affiche la différence des dépenses et recettes; Je viend de créer une nouvelle zone de texte nommée (Résultat) dans laquelle j'aimerais afficher soit :
    'Bénéfice' si la différence est positive,
    'Perte' si la différence est négative ainsi qu'un changement de couleur de fond de la zone de texte , par exemple:
    verte si +
    rouge si -
    Bon à savoir: Ma BD se nomme "Indiciaire", ma table"AJustifier" et mon formulaire"FormIndic"
    Pouvez-vous m'aider en sachant que je connais peu de choses en programmation?
    Salutations amicales
    Claudine

  2. #2
    Rédacteur/Modérateur
    Avatar de argyronet
    Homme Profil pro
    Panseur de bobos en solutions ETL
    Inscrit en
    Mai 2004
    Messages
    5 123
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Panseur de bobos en solutions ETL
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2004
    Messages : 5 123
    Points : 12 169
    Points
    12 169
    Billets dans le blog
    5
    Par défaut
    Bonjour,

    Dans ta zone de texte, tu tapes la formule :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =IIf(Différence>0; "Bénéfice"; "Perte")
    Après quoi, toujours focalisée sur cette zone de texte, tu paramètres les options de Mise en forme conditionnelle en fonction du contenu, à savoir :
    Vert pour le mot Bénéfice
    Rouge pour le mot Perte

    N'oublie pas de verrouiller cette zone de texte et de lui définir un Arrêt Tabulation à Non...

    Argy
    Ce qui donne son sens à la communication, c´est la réponse que l´on obtient. Si vous n´obtenez pas la réponse voulue, communiquez différemment.

    Ils comptent sur vous...
    Web Site@Mail
    Tutoriels : Déployez vos applications Access 2010 à 2019 */* Réalisez un Assistant de présaisie...
    MDB Viewer : Visionneuse Access v4.0
    *** Je recherche des profils (2 ans min.) Java EE, Fullstack, Front, .Net, Mobile... pour CDI ***

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Février 2008
    Messages
    293
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2008
    Messages : 293
    Points : 95
    Points
    95
    Par défaut Afficher un mot dans une zone de texte sous conditions
    Bonjour et Merci Argy pour cette réponse rapide, mais je reste avec certains problèmes à savoir:
    je suppose que le code que j'ai tapé dans la zone de texte Résultat est bien
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    = If ([Différence]>0;"Bénéfice";"Perte")
    Mais il m'affiche: signe dièse Nom?
    De plus je suis en Access 2000 et je ne vois pas De Mise en forme conditionnelle dans les propriétés, par contre j'ai verrouiller la zone de texte et un arrêt sur tabulation à Non
    Pouvez-vous me renseigner?
    Claudine

  4. #4
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Juillet 2006
    Messages
    1 219
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 79
    Localisation : France

    Informations professionnelles :
    Secteur : Services à domicile

    Informations forums :
    Inscription : Juillet 2006
    Messages : 1 219
    Points : 1 707
    Points
    1 707
    Par défaut
    bonsoir,
    je suppose que le code que j'ai tapé dans la zone de texte Résultat est bien = If ([Différence]>0;"Bénéfice";"Perte")
    Non c'est bien
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =IIf(Différence>0; "Bénéfice"; "Perte")
    en fait plus exactement dans le générateur d'expression il se transformera en :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =VraiFaux(Différence>0; "Bénéfice"; "Perte")
    mais c'est pareil.

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Février 2008
    Messages
    293
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2008
    Messages : 293
    Points : 95
    Points
    95
    Par défaut Ajouter un mot dans une zone de texte sous conditions
    Bonsoir
    Un tout grand merci car je n'avais jamais rencontré cette expression
    Cela fonctionne à merveille;
    Mais pour la suite, comment paramètrer les options de Mise en forme conditionnelle en fonction du contenu, à savoir :
    Vert pour le mot Bénéfice
    Rouge pour le mot Perte
    Car je ne vois nulle part dans Access 2000 cette option de mise en forme conditionnelle
    Sincères remerciements pour votre aide
    Claudine

  6. #6
    Rédacteur/Modérateur

    Avatar de User
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    8 264
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2004
    Messages : 8 264
    Points : 19 430
    Points
    19 430
    Billets dans le blog
    63
    Par défaut
    Salut,

    tu peux jeter un oeil sur ce tuto:

    L'auteur explique en détail comment dèfinir les conditions de la mise en forme
    Vous trouverez dans la FAQ, les sources ou les tutoriels, de l'information accessible au plus grand nombre, plein de bonnes choses à consulter sans modération

    Des tutoriels pour apprendre à créer des formulaires de planning dans vos applications Access :
    Gestion sur un planning des présences et des absences des employés
    Gestion des rendez-vous sur un calendrier mensuel


    Importer un fichier JSON dans une base de données Access :
    Import Fichier JSON

  7. #7
    Membre régulier
    Profil pro
    Inscrit en
    Février 2008
    Messages
    293
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2008
    Messages : 293
    Points : 95
    Points
    95
    Par défaut Afficher un mot dans une zone de texte sous conditions
    Bonjour à tous
    Mille fois merci User, grâce à vous, j'ai fait un pas de géant en Access et je me rends compte que malgé cela je suis encore pratiquement nul.
    Bref, cette Mise en forme conditionnelle est géniale et ouvre beaucoup de portes souvent fermées.
    Pour d'autres Webmaesters aussi nuls que moi et qui suivent la résolutions de ce problème, je tiens à préciser ce que j'ai introduit dans le formulaire de mise en forme conditionnelle:
    en 1ere condition: [TotalRecettes]-[TotalDépenses]<0 avec le choix de la couleur de fond rouge
    en 2ème condition: [TotalRecettes]-[TotalDépenses]>0 avec le choix de la couleur de fond verte.
    Pour accéder à ce dernier, il suffit de cliquer sur la zone de texte et de cliquer ensuite dans la barre sur format puis sur mise en forme conditionnelle
    Une fois de plus, mes plus sincères remerciements à toute l'équipe.
    Claudine

  8. #8
    Membre régulier
    Profil pro
    Inscrit en
    Février 2008
    Messages
    293
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2008
    Messages : 293
    Points : 95
    Points
    95
    Par défaut Afficher un mot dans une zone de texte sous conditions
    Bonjour à tous,
    Je sollicite votre aide car je constate que tout fonctionne normalement mis à part le fait que les résultats des: TotalDépenses , TotalRecettes et Différences s'affichent dans le formulaire mais ne sont pas enregistrés dans la table correspondante nommée "A Justifier".
    Comment puis-je résoudre ce problème?
    Salutations
    Claudine

  9. #9
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Juillet 2006
    Messages
    1 219
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 79
    Localisation : France

    Informations professionnelles :
    Secteur : Services à domicile

    Informations forums :
    Inscription : Juillet 2006
    Messages : 1 219
    Points : 1 707
    Points
    1 707
    Par défaut
    Bonjour,
    Pour avoir des champs calculés « directement » dans une table il faudra attendre access 2010. Pour le moment si on veut simplement utiliser les calculs cela se fait dans une requête.
    Si on veut les enregistrer dans les champs de la table il faut le faire par du code à mettre sur l’évènement le plus adapté du formulaire en laissant la référence de sa source de contrôle conforme à la table.
    Ex :
    Dans la table :
    Prix HT
    TVA – format %
    Prix TTC.
    Sur l’évènement « après mise a jour » (Feuille de Propriété, évènement,…,Générateur de code, après MAJ) du champ TVA :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Private Sub TVA_AfterUpdate()
    Me.Prix_TTC = Me.Prix_HT * (1 + Me.TVA)
    End Sub
    À adapter à ta table et ton formulaire.

  10. #10
    Membre régulier
    Profil pro
    Inscrit en
    Février 2008
    Messages
    293
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2008
    Messages : 293
    Points : 95
    Points
    95
    Par défaut Afficher un mot dans une zone de texte sous conditions
    Bonjour et merci Mr Le Vieux
    Malheureusement je n'ai toujours pas l'enregistrement dans la table du TotalDépenses. Voici ce que j'ai tapé dans le générateur de code "après Maj" de la propriété de la zone de texte"TotalDépenses":

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Private Sub TotalDépenses_AfterUpdate()
    Me.TotalDépenses = Me.Précompte_immobilier + Me.Versements_anticipés + Me.Frais_de_menage + Me.Remboursements_prêts + Me.Investissements_Privés + Me.Epargne_pension + Me.Impôts_payés + Me.Frais_de_véhicule_privé + Me.Titres_services + Me.Frais_TélEtGSM_privés + Me.Cot_sécurité_sociale + Me.Autres
    End Sub
    Voyez-vous une erreur?
    Sincères remerciements
    Claudine

  11. #11
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Juillet 2006
    Messages
    1 219
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 79
    Localisation : France

    Informations professionnelles :
    Secteur : Services à domicile

    Informations forums :
    Inscription : Juillet 2006
    Messages : 1 219
    Points : 1 707
    Points
    1 707
    Par défaut
    Bonsoir,
    Le code ne doit pas être mis sur « après mise a jour » du contrôle qui reçoit le calcul (TotalDépenses), mais par exemple sur le dernier contrôle renseigné avant le calcul.
    Si tu ne peux mettre du code que sur le contrôle TotalDépenses, met le sur « réception focus » à condition que tous les autres contrôles soient renseignés.
    Tu peux le mettre aussi sur l’évènement « AVANT mise a jour » du formulaire il sera enregistré mais tu ne verra le résultat qu’en revenant sur l’enregistrement ou en consultant ta table.
    Sinon donne plus de détail sur l’utilisation de ton formulaire et la table – champs présents en relation avec la table – champs calculés qui doivent être renseignés et/ou enregistrés.

  12. #12
    Membre régulier
    Profil pro
    Inscrit en
    Février 2008
    Messages
    293
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2008
    Messages : 293
    Points : 95
    Points
    95
    Par défaut Afficher un mot dans une zone de texte sous conditions
    Bonsoir,Comme je n'arrive pas à solutionner le problème, j'ai refait une nouvelle table nommée TableJustification et formulaire: FormTableJustification beaucoup plus simple, à savoir:
    la table et le formulaire comporte tous deux les mêmes5 colonnes: N° (NuméroAuto), Béneficenet,Amortissements, SalairesProf et enfin TotalRecettes.
    Dans le formulaire , la zone de texte [TotalRecettes]affiche la somme des autres zones de texte car dans les propriétés et souce Contrôles de TotalRecettes j'y ai indiqué
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =[Béneficenet]+[Amortissement]+[SalairesProf]
    Par contre cette somme n'est jamais enregistrée dans la table.
    J'espère avoir été plus explicite et je serai très heureux que vous puissiez me dépanner.
    Sincères remerciements
    Claudine

  13. #13
    Rédacteur/Modérateur

    Avatar de User
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    8 264
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2004
    Messages : 8 264
    Points : 19 430
    Points
    19 430
    Billets dans le blog
    63
    Par défaut
    Salut,

    Normal, la propriété source contrôle sert à lier la zone de texte à un champ de la table source, si tu remplace le champ par une expression le résultat ne sera donc pas enregistré dans un champ de la table.

    Comme te l'a indiqué Le Vieux, il te faut mettre le code, par exemple, sur afterupdate des zones de texte Béneficenet, Amortissement et SalairesProf, par exemple:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Private Sub Amortissement_AfterUpdate()
    Me.TotalDépenses = nz(Me.Béneficenet,0)+nz(Me.Amortissement,0)+nz(Me.SalairesProf,0)
    end sub
    la fonction nz renvoie 0 si la zone de texte est vide

    A+
    Vous trouverez dans la FAQ, les sources ou les tutoriels, de l'information accessible au plus grand nombre, plein de bonnes choses à consulter sans modération

    Des tutoriels pour apprendre à créer des formulaires de planning dans vos applications Access :
    Gestion sur un planning des présences et des absences des employés
    Gestion des rendez-vous sur un calendrier mensuel


    Importer un fichier JSON dans une base de données Access :
    Import Fichier JSON

  14. #14
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Juillet 2006
    Messages
    1 219
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 79
    Localisation : France

    Informations professionnelles :
    Secteur : Services à domicile

    Informations forums :
    Inscription : Juillet 2006
    Messages : 1 219
    Points : 1 707
    Points
    1 707
    Par défaut
    Bonjour,
    User t’as donné la solution et précisé le pourquoi de ce que je t’avais précédemment posté :
    Si on veut les enregistrer dans les champs de la table il faut le faire par du code à mettre sur l’évènement le plus adapté du formulaire en laissant la référence de sa source de contrôle conforme à la table.
    .

    simple précision comme tu as déjà mis une formule dans ton champ « TotalDépenses », tu dois l’effacer et remettre sa propriété source de contrôle à « TotalDépenses » qui doit être accessible avec la flèche à droite où il y a tous les champs de ta table.
    à +

  15. #15
    Membre régulier
    Profil pro
    Inscrit en
    Février 2008
    Messages
    293
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2008
    Messages : 293
    Points : 95
    Points
    95
    Par défaut Afficher un mot dans une zone de texte sous conditions
    Bonjour et mille remerciements a vous Messieurs Le Vieux et Users.
    Grâce à vous , je progresse à petits pas et c'est merveilleux de se sentir épaulé.
    Claudine

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

Discussions similaires

  1. Icone Calendar & afficher la date dans une zone de texte
    Par insane_80 dans le forum ASP.NET
    Réponses: 2
    Dernier message: 22/02/2009, 23h29
  2. Réponses: 8
    Dernier message: 17/12/2008, 11h03
  3. Mettre un 0 dans une zone de texte sur condition
    Par Bubut dans le forum VBA Access
    Réponses: 17
    Dernier message: 08/07/2007, 12h22
  4. Réponses: 14
    Dernier message: 30/05/2006, 16h55

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