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

VBA Access Discussion :

Remplacer la valeur d'un champ par un autre


Sujet :

VBA Access

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Femme Profil pro
    Étudiant
    Inscrit en
    Avril 2018
    Messages
    60
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2018
    Messages : 60
    Par défaut Remplacer la valeur d'un champ par un autre
    Bonjour,

    j'essaye d'écrire un code en VBA qui exécutera les lignes suivantes :
    1) si l'utilisateur a rempli le champ dans le formulaire B
    2) alors la valeur de ce champ est reporté dans le champ du formulaire A

    1') si l'utilisateur n'a pas rempli le champ dans le formulaire B
    2') alors la valeur de ce champ n'est pas reporté dans le champ du formulaire A
    3') le champ du formulaire A - garde sa valeur initiale si il a été rempli au préalable ou - reste vide si il n'a pas été rempli au préalable

    Pour l'instant j'ai écris ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Private Sub CHAMP_B_BeforeUpdate(Cancel As Integer)
    If Forms("[CHAMP B]").Controls("[CHAMP B]") = 1 Then
       Forms("[CHAMP A]").Controls("[CHAMP A]") = 1
    End If
    If Forms("[CHAMP B]").Controls("[CHAMP B]") =  "" Then
       Forms("[CHAMP A]").Controls("[CHAMP A]") =  '???? : la valeur ne se modifie pas 
    End If
    End Sub
    Comment je peux remplacer 1 et définir une variable ?
    Comment je peux faire 3') ?

  2. #2
    Membre émérite Avatar de Ric500
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    983
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Aude (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2004
    Messages : 983
    Par défaut Remplacer la valeur d'un champ par un autre
    Salut,

    Pour commencer j'utiliserais l'événement "After_Update",

    Et j'y mettrais si ChampB reçoit une valeur numérique:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    If nz([Champ B],0)<>0 then forms![Champ A]![Champ A]=[Champ B]
    Si champB reçoit une valeur AlphaNumérique:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    If nz([Champ B],"")<>"" then forms![Champ A]![Champ A]=[Champ B]
    J'espère que j'ai bien compris ta question

  3. #3
    Membre averti
    Femme Profil pro
    Étudiant
    Inscrit en
    Avril 2018
    Messages
    60
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2018
    Messages : 60
    Par défaut
    Merci Ric500, ça marche impécablement. J'ai repris ton code et ça fonctionne même quand les champs sont des dates et quand les champs sont des prix.
    Après j'ai laissé le BeforeUpdate car avec le AfterUpdate j'obtenais l'erreur suivante :

    "L'expression Après Maj entrée comme paramètre de la propriété de type évènement est à l'origine d'une erreur. La déclaration de la procédure ne correspond pas à la description de l'évènement ou de la procédure de même nom."

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

Discussions similaires

  1. Réponses: 3
    Dernier message: 05/04/2018, 12h01
  2. [XL-2007] [FORM] remplacer la valeur d'une cellule par une autre
    Par coldavires dans le forum Excel
    Réponses: 7
    Dernier message: 21/01/2010, 22h34
  3. remplacer la valeur d'un champ par "*"
    Par opensource dans le forum Langage SQL
    Réponses: 7
    Dernier message: 13/02/2008, 13h22
  4. Probleme Valeur d'un champ par défault
    Par idrobe dans le forum Access
    Réponses: 1
    Dernier message: 14/07/2006, 15h39
  5. remplacer des espaces dans un champ par des zero
    Par yeep dans le forum Access
    Réponses: 4
    Dernier message: 08/10/2004, 09h41

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