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 :

Ajout/Modification de données - Evénements associés


Sujet :

VBA Access

  1. #1
    Expert éminent sénior
    Avatar de Domi2
    Homme Profil pro
    Gestionnaire
    Inscrit en
    Juin 2006
    Messages
    7 194
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : Suisse

    Informations professionnelles :
    Activité : Gestionnaire
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juin 2006
    Messages : 7 194
    Points : 16 044
    Points
    16 044
    Par défaut Ajout/Modification de données - Evénements associés
    Bonsoir,

    Pour autant que je n'aie pas fait d'erreur, l'ajout de données dans une table via un formulaire déclenche dans l'ordre :

    1) BeforeInsert
    2) BeforeUpdate
    3) AfterUpdate
    4) AfterInsert

    En cas de modification de données existantes, seuls les événements 2 et 3 se produisent.

    Existerait-il d'autres événements utiles, notamment qui ne se produiraient qu'en cas de modification de données ?

    Merci !

    Domi2

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

    Va jeter un coup d'oeil sur la page de Loufab, il a fait un petit outil qui permet de chasser les évènements (dans la partie téléchargement).

    Regardes si tu ne trouves pas ton bonheur la dedans.

    Starec

  3. #3
    Expert éminent sénior
    Avatar de Domi2
    Homme Profil pro
    Gestionnaire
    Inscrit en
    Juin 2006
    Messages
    7 194
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : Suisse

    Informations professionnelles :
    Activité : Gestionnaire
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juin 2006
    Messages : 7 194
    Points : 16 044
    Points
    16 044
    Par défaut
    Bonjour,

    Merci pour le lien Starec.

    Bien le petit outil, je me le met de côté.

    J'avais omis de le mentionner, il y'a encore dans les deux cas l'événement Si modification.

    Mais en l'occurence il ne m'est pas plus utile, je m'explique.

    Lors de saisie de données dans un formulaire, on peut vouloir accomplir des actions différentes selon que l'on ajoute ou modifie des données (par exemple des tests de validation des données dans Avant MAJ.

    Le meilleur moyen que j'aie trouvé, c'est déclarer une variable boléenne (blnAjout) en entête de module et de la déclarer à faux lors du chargement du formulaire.

    Et je la passe à vrai dans Avant insertion, ainsi je sais que j'ajoute des données et je peux agir en conséquence. Je la remet à faux dans Après MAJ, bien sûr.

    Je ne sais pas s'il y'a plus simple ou plus sûr.

    Domi2

  4. #4
    Invité
    Invité(e)
    Par défaut
    Re

    Peut-être que ce qu'il y a dans cet article de Cafeine pourrait être utile http://cafeine.developpez.com/access/tutoriel/update/

    De toute façon sa lecture n'est pas ininterressante.

    Starec

  5. #5
    Expert éminent sénior
    Avatar de Domi2
    Homme Profil pro
    Gestionnaire
    Inscrit en
    Juin 2006
    Messages
    7 194
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : Suisse

    Informations professionnelles :
    Activité : Gestionnaire
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juin 2006
    Messages : 7 194
    Points : 16 044
    Points
    16 044
    Par défaut
    Peut-être que ce qu'il y a dans cet article de Cafeine pourrait être utile http://cafeine.developpez.com/access/tutoriel/update/

    De toute façon sa lecture n'est pas ininterressante.
    Oui, très intéressant, et je l'avais étudié il y'a quelque mois, avant de mettre en place ma solution.

    Mais, que je suis, j'étais complétement passé à côté de l'intérêt offert par la propriété Old.Value d'un champ.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    'Dans l'événement Avant MAJ (BeforeUpdate)
    If IsNull (Me.txtMonId.Old) Then 'test sur un champ contenant ma clé primaire, par ex.
     
        'Ajout de données
     
    Else
     
        'Modification de données existantes
     
    End if
    Plus simple, je ne vois pas

    Merci

    Domi2

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

Discussions similaires

  1. Réponses: 6
    Dernier message: 03/06/2010, 23h35
  2. Réponses: 16
    Dernier message: 17/11/2009, 15h14
  3. Réponses: 3
    Dernier message: 03/07/2008, 15h32
  4. Recherche classe pour ajout/modif/suppression d'articles dans une base de donnée
    Par will89 dans le forum Bibliothèques et frameworks
    Réponses: 1
    Dernier message: 02/02/2007, 12h59

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