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 :

Initialisation d'un champ via un événement


Sujet :

IHM

  1. #1
    Nouveau Candidat au Club
    Inscrit en
    Avril 2008
    Messages
    1
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 1
    Points : 1
    Points
    1
    Par défaut Initialisation d'un champ via un événement
    Bonjour j'utilise Microsoft Access 2003.
    Mon problème concerne 2 tables : "Personnel" et "Incident"
    Dans ma table personnel, le champ concerné est : "Date_Prise_Poste"
    Dans ma table Incident, les champs concernés sont : "Date" et "Ancienneté"
    "Date_Prise_Poste" et "Date" sont de type date
    "Ancienneté" est un numérique qui doit prendre la différence de mois entre les 2 dates.

    Dans mon formulaire "Personnel", il y a possibilité de remplir "Date_Prise_Poste"
    Dans mon sous formulaire "Incident", Il y a possibilité de remplir "Date"
    J'ai créé un champ où j'affiche le résultat de cette différence :
    Donnée => Source contrôle :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Ent(([Date]-Formulaires![Personnel]!Date_Prise_Poste)/30)
    Ce que je souhaite à partir de là c'est remplir automatiquement mon champ ancienneté lorsque je modifie la valeur de "Date" ou "Date_Prise_Poste".

    Après quelques recherches, j'ai vu qu'il fallait dans mes 2 champs de type date rajouter un événement Avant MAJ.
    J'ai essayé de convertir ma petite formule en VB mais ça ne fonctionne pas. Voici ce que j'ai mis :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Private Sub Date_BeforeUpdate(Cancel As Integer)
    Incident.[Ancienneté] = CInt((Incident.[Date] - Personnel.[Date_Prise_Poste]) / 30)
    End Sub
    En vous remerciant par avance, je vous remercie de toute l'aide que vous pourrez m'apporter.

  2. #2
    Membre régulier Avatar de SnakeCharmer
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    117
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Mars 2008
    Messages : 117
    Points : 112
    Points
    112
    Par défaut
    J'ai peut-être une astuce pour toi : en VBA, il existe la fonction DateDiff
    (pour + de renseignement, F1!)

Discussions similaires

  1. Changer le type d'un champ via vba
    Par mat75019 dans le forum Requêtes et SQL.
    Réponses: 4
    Dernier message: 02/10/2006, 17h42
  2. multiplication de champs via une table
    Par lumbroso dans le forum VB 6 et antérieur
    Réponses: 7
    Dernier message: 12/09/2006, 10h00
  3. Réponses: 2
    Dernier message: 08/05/2006, 12h22
  4. Réponses: 1
    Dernier message: 10/11/2005, 22h00
  5. [Débutant] Initialiser zone de texte via un tableau
    Par Theseus dans le forum VB 6 et antérieur
    Réponses: 9
    Dernier message: 27/01/2005, 10h19

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