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

Contribuez Discussion :

Signe champ conditionnel valeur autre champ


Sujet :

Contribuez

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Ingénieur commercial
    Inscrit en
    Février 2016
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Ingénieur commercial
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2016
    Messages : 1
    Points : 1
    Points
    1
    Par défaut Signe champ conditionnel valeur autre champ
    Bonjour,

    Je souhaite conditionné automatique le signe d'un champ à la valeur indiqué dans un autre champ du même enregistrement de la même table.
    Exemple: dans une table le champ "type opération" affiche une liste de choix: "débit" ou "crédit"; je souhaites pouvoir rentrer un valeur dans un autre champ "montant" de type monétaire et que ce montant s'affiche automatiquement en négatif si le choix "débit" a été fait dans le champ "type opération" et positif si le choix "crédit" a été fait dans le champ "type opération".

    Quelqu'un peut-il m'aider?

    Cordialement,

    JBOFFICE

  2. #2
    Expert éminent
    Avatar de jimbolion
    Homme Profil pro
    Moulticien
    Inscrit en
    Janvier 2013
    Messages
    3 150
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Moulticien
    Secteur : Santé

    Informations forums :
    Inscription : Janvier 2013
    Messages : 3 150
    Points : 7 001
    Points
    7 001
    Billets dans le blog
    2
    Par défaut
    JBoffice bonjour

    et bienvenu parmi nous

    Tu auras pris soin de mettre ton champ en format monétaire et sur la propriété <Après Mise à jour> de ton champ Montant appliquer ce code VBA :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Private Sub Montant_AfterUpdate()
    Select Case Nz(Me.Lb_TypeEcr, "")
    Case ""
        Me.Lb_TypeEcr.SetFocus ' rend le focus sur la zone sélectionnée
    Case "Débit"
        Me.Montant = 0 - Val(Nz(Me.Montant, 0))
    Case "Crédit"
        Me.Montant = Abs(Nz(Me.Montant, 0))
    End Select
    End Sub
    A adapter en fonction du nom de tes champs

    Cordialement

    Jimbolion
    N'oubliez pas le Tag si la réponse donnée vous a été utile et pour une réponse pertinente.
    Retrouvez-moi sur le chat en salon base de données

  3. #3
    Membre expérimenté
    Avatar de Papy Turbo
    Homme Profil pro
    Développeur Office/VBA
    Inscrit en
    Mars 2004
    Messages
    822
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Office/VBA
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2004
    Messages : 822
    Points : 1 709
    Points
    1 709
    Par défaut
    Salut, jimbolion,

    juste une petite remarque au passage : tu as bien mis Abs() pour le Crédit.
    Je le mettrais aussi pour le Débit, au cas où l'utilisateur a déjà saisi une valeur négative.
    Développement Office, support technique, assistance, sur place (Loire atlantique, Vendée, Maine et Loire) ou à distance.

  4. #4
    Expert éminent
    Avatar de jimbolion
    Homme Profil pro
    Moulticien
    Inscrit en
    Janvier 2013
    Messages
    3 150
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Moulticien
    Secteur : Santé

    Informations forums :
    Inscription : Janvier 2013
    Messages : 3 150
    Points : 7 001
    Points
    7 001
    Billets dans le blog
    2
    Par défaut
    Papy Turbo,

    bien vu et bonne remarque

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Private Sub Montant_AfterUpdate()
    Select Case Nz(Me.Lb_TypeEcr, "")
    Case ""
        Me.Lb_TypeEcr.SetFocus ' rend le focus sur la zone sélectionnée
    Case "Débit"
        Me.Montant = 0 - abs(Val(Nz(Me.Montant, 0)))
    Case "Crédit"
        Me.Montant = Abs(Nz(Me.Montant, 0))
    End Select
    End Sub
    et on pourrait même rajouter un événement <après Mise à jour> sur la boîte liste déclenchant cette procédure au cas ou l'utilisateur vienne changer débit en crédit par exemple.

    Cldt


    jm
    N'oubliez pas le Tag si la réponse donnée vous a été utile et pour une réponse pertinente.
    Retrouvez-moi sur le chat en salon base de données

Discussions similaires

  1. attribuer une valeur à un champ fct d'autres champs
    Par gladiamax dans le forum Modélisation
    Réponses: 3
    Dernier message: 22/07/2011, 03h37
  2. Réponses: 1
    Dernier message: 20/09/2009, 20h39
  3. Réponses: 5
    Dernier message: 08/06/2009, 23h35
  4. Form - Copie de la valeur d'un champ ds un autre champ
    Par Papillon00 dans le forum VBA Access
    Réponses: 4
    Dernier message: 21/11/2007, 21h56
  5. [Requête/SQL]Remplacer champ par valeur autre champ
    Par BORDEAUX4 dans le forum Requêtes et SQL.
    Réponses: 4
    Dernier message: 17/04/2007, 11h05

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