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 :

[VBA]Création dynamique de code


Sujet :

VBA Access

  1. #1
    Membre expérimenté

    Homme Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 184
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 184
    Points : 1 363
    Points
    1 363
    Par défaut [VBA]Création dynamique de code
    Bonjour,

    Depuis un formulaire, suite aux sélections de l'utilisateur, je crée dynamiquement un autre formulaire qui affiche des résultats. Ce formulaire est une grille qui possède n colonnes (selon les choix de l'utilisateur).
    Je voudrais pouvoir créer, dynamiquement aussi, du code qui s'exécuterait lorsque l'utilisateur double-clic dans une cellule (afin d'afficher un autre formulaire représentant le détail).
    Comment faire pour créer dynamiquement le code VBA ?

    Merci.

  2. #2
    pgz
    pgz est déconnecté
    Expert éminent Avatar de pgz
    Homme Profil pro
    Développeur Office VBA
    Inscrit en
    Août 2005
    Messages
    3 692
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Office VBA
    Secteur : Conseil

    Informations forums :
    Inscription : Août 2005
    Messages : 3 692
    Points : 6 591
    Points
    6 591
    Par défaut
    Bonjour,

    Pour créer dynamiquement du code, il faut instancier un module, en l'occurence celui associé à ton formulaire:
    Dim frm as form, mdl as Module

    set frm = ...
    set mdl = frm.Module

    ...

    mdl.InsertLines ...

    Pour insérer une procédure évenementielle, donner à la procédure un nom adapté, par ex :
    sub MonControle_OnDblClick()

    et dans la propriété OnDblClick du contrôle : [EventProcedure]

    Bon courage,

    PGZ

  3. #3
    Nouveau membre du Club
    Inscrit en
    Juillet 2004
    Messages
    31
    Détails du profil
    Informations forums :
    Inscription : Juillet 2004
    Messages : 31
    Points : 27
    Points
    27
    Par défaut
    Va jeter un coup d'oeil la dessus : http://access.developpez.com/faq/?pa...reeDynCtrlCode

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

    Sinon ici, c'est pour Excel, mais je pense que l'on peut l'adapter à Access.

    http://silkyroad.developpez.com/VBA/VisualBasicEditor/

    Je n'ai jamais essayer, mais jette un coup d'oeil dés fois que.

    Starec

  5. #5
    Membre expérimenté

    Homme Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 184
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 184
    Points : 1 363
    Points
    1 363
    Par défaut
    Voici la syntaxe du bidule :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Dim mdl As Module
    Dim lngRetour As Long
        Set mdl = Forms("LeNomDuForm").Module
        lngRetour = mdl.CreateEventProc("DblClick", "LeNomDuChamp")
        lngRetour = lngRetour + 1: mdl.InsertLines lngRetour, "Dim iInt_Id As integer"
        lngRetour = lngRetour + 1: mdl.InsertLines lngRetour, "iInt_Id =4"
    LeNomDuChamp ne doit pas comporter de caractères autres qu'alphanumériques.
    Il faut remplacer les espaces et - par _, les autres caractères (<, >, ...) par "ctl_"

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

Discussions similaires

  1. création dynamique d'une boite de dialogue en VBA
    Par DiverSIG dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 23/10/2008, 10h10
  2. vba/création dynamique control
    Par sefir dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 11/06/2007, 17h41
  3. Réponses: 4
    Dernier message: 17/04/2007, 14h06
  4. Réponses: 2
    Dernier message: 05/04/2007, 14h53
  5. Création dynamique et boucle for en vba Access 2000
    Par billy123 dans le forum Access
    Réponses: 4
    Dernier message: 22/02/2007, 11h29

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