Créer Module Access

Embed Size (px)

Citation preview

  • 7/25/2019 Crer Module Access

    1/18

    G. Gesquire, [email protected]

    A la dcouverte d access

    Ecrire vos propres fonctions

  • 7/25/2019 Crer Module Access

    2/18

    G. Gesquire

    Objectifs

    Savoir crer un module standard

    Savoir crire des procdures gnrales Sub et Function

    Savoir utiliser le passage de paramtres

    Savoir utiliser des procdures gnrales

    Vous utiliserez le fichier TP9.mdb

  • 7/25/2019 Crer Module Access

    3/18

    G. Gesquire

    1- Comprendre les modules et les procdures

    Pour linstant, nous avons crit tout notre code dans les

    procdures vnementielles associes des objets.

    Les procdures gnrales (que nous allons crire) nesexcutent pas automatiquement en rponse aux

    vnements.

    Il y a deux types de procdures gnrales : Sub et

    Function alors que toutes les procdures

    vnementielles sont de type Sub.

  • 7/25/2019 Crer Module Access

    4/18

    G. Gesquire

    2- Pourquoi crer des procdures gnrales

    Utiliser des procdures gnrales pour :

    Excuter des oprations complexes qui ne rentrent pas dans

    une expression rutiliser du code pour viter de rpter une tche

    Diviser des tches de programmation en units plus facilement

    grables

  • 7/25/2019 Crer Module Access

    5/18

    G. Gesquire

    3- Modules standard et modules de

    formulaires Il est possible de mettre des procdures gnrales dans

    un module de formulaire (ou dtat)

    Elles sont alors accessibles toutes les procduresvnementielles du formulaire (ou de ltat)

    Il est possible de mettre des procdures gnrales dans

    un module standard Elles sont alors accessibles toute lapplication.

  • 7/25/2019 Crer Module Access

    6/18

    G. Gesquire

    4- Crer des procdures gnrales dans un

    module standard Une application peut contenir plusieurs modules et

    chacun deux peut contenir plusieurs procdures

    Cela permet de crer des modules spcialissrutilisables dans de multiples applications (il suffit

    dimporter le module)

  • 7/25/2019 Crer Module Access

    7/18

    G. Gesquire

    5- Crer un module standard

    Fentre base de donnes / Onglet Modules / Bouton

    Nouveau

    La fentre Module1 : Module saffiche

  • 7/25/2019 Crer Module Access

    8/18

    G. Gesquire

    5- Crer un module standard

    Option Compare Database ne peut tre utilise quau

    sein de Microsoft Access. Elle gnre des comparaisons

    de chanes fondes sur lordre de tri dtermin par lIDdes paramtres nationaux de la base de donnes dans

    laquelle a lieu la comparaison

    Avec linstruction Option Explicit, toutes les variablesdoivent tre dclares explicitement laide dune

    instruction Dim, Private, Public, ReDim, Static

    Si vous tentez dutiliser une variable non dclare, une

    erreur se produit lors de la compilation

  • 7/25/2019 Crer Module Access

    9/18

    G. Gesquire

    5- Crer un module standard

    Remarque :

    Indiquer toujours loption Explicit

    Menu Outil / Option / Dans longlet Editeur / activer

    Dclaration des variables obligatoire

    A louverture, un module est vide ou presque.

  • 7/25/2019 Crer Module Access

    10/18

    G. Gesquire

    6- Dclarer des valeurs constantes

    Dclaration :

    Const conNomApp = Gestion des clients

    Cette instruction rend accessible la constanteconNomApp tout votre module.

    Si vous souhaitez quelle soit connue de votre

    application entire, il faut ajouter le mot Public devant lemot Const

  • 7/25/2019 Crer Module Access

    11/18

    G. Gesquire

    7- Crer une procdure Sub

    Si pour les procdures vnementielles lies aux objetsde votre applications les noms et les paramtres voussont imposs, l dans votre module, cest vous qui devez

    dcider du nom et des paramtres ventuellementncessaires

    Crer la procdure AfficheMessage qui prendra encharge laffichage des messages que nous adresseronsaux utilisateurs

    Cliquez sur le bouton Insrer une procdure dans le menu Insrer

    de la barre doutils de la fentre VB Nom AfficheMessage / type procdure (Sub)

    Laisser tendue sur Publique

    Appuyer sur Ok

  • 7/25/2019 Crer Module Access

    12/18

    G. Gesquire

    7- Crer une procdure Sub

    Taper linstruction suivante :

    MsgBox Voici mon message , vbExclamation, conNomApp

    Tester la procdure en utilisant la fentre de dbogage Cliquer sur le bouton de lancement du code (ou slectionner loption

    Excuter du menu Excution

    Choisir la procdure AfficheMessage

    Votre procdure sexcute

  • 7/25/2019 Crer Module Access

    13/18

    G. Gesquire

    8- Ajouter des arguments une procdure

    Pour passer le message en paramtres

    Entrez strMessage As String dans les parenthses de linstruction Sub

    Modifier la ligne MsgBox en remplaant la chane voici mon message

    par le nom de la variable qui contiendra le texte afficher. Cette variable eststrMessage

    Tester avec la fentre dbogage / taper le nom de la procdure suivi du

    message que vous dsirez afficher

    Exemple : AfficheMessage Je peux dire ce que je veux

  • 7/25/2019 Crer Module Access

    14/18

    G. Gesquire

    9- Crer une fonction

    Une fonction permet de retourner une valeur

    Dans le code, il doit toujours exister une ligne ayant la

    syntaxe :NomDeLaFonction = ValeurARetourner

    Si nous voulons crer une fonction qui pose des

    questions : Fermer la fentre de dbogage

    Insrer une procdure

    Nom : Confirme / Type function / Bouton Ok Taper le code du transparent suivant

  • 7/25/2019 Crer Module Access

    15/18

    G. Gesquire

    9- Crer une fonction

  • 7/25/2019 Crer Module Access

    16/18

    G. Gesquire

    9- Crer une fonction

    Tester dans la fentre de dbogage

    Taper linstruction suivante :

    ?Confirme( Est-ce Ok ?)

    La bote de dialogue saffiche / Cliquer sur Ok / la valeur vrai saffiche

    dans la fentre dbogage

    Si vous recommencez en choisissant le bouton Annuler, la fonction

    retourne Faux et affiche cette valeur dans la fentre de dbogage

    10 Utili d d l d

  • 7/25/2019 Crer Module Access

    17/18

    G. Gesquire

    10- Utiliser des procdures gnrales dans un

    formulaire Les procdures tant dclares en public, elles sont

    consultables par toute lapplication

    Utilisation de la fonction Confirme Onglet Formulaire / Slectionner FClients / Code

    liste de gauche du module : slectionner lobjet Form / Proc :

    BeforeUpdate Modifier le code comme sur le transparent suivant

    10 Utili d d l d

  • 7/25/2019 Crer Module Access

    18/18

    G. Gesquire

    10- Utiliser des procdures gnrales dans un

    formulaire