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 :

Récupérer le nom de la procédure active


Sujet :

VBA Access

  1. #1
    Membre à l'essai
    Inscrit en
    Février 2009
    Messages
    20
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 20
    Points : 19
    Points
    19
    Par défaut Récupérer le nom de la procédure active
    * Bonjour *

    Le nom dit tout. Y a-t-il une façon pour récupérer le nom de la procédure en cours en VBA? Le but est de pouvoir appeler la procédure de gestion d'erreurs et passer le nom de la procédure en cours en paramètre, plutôt que de la taper à la main dans chaque procédure. Ex:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    On error goto erreur
    erreur:
        Call GestionErreur(Err.Number, Err.Description, NomProcedureActive, Me.Name)
        Resume sortie
    J'ai trouvé ce bout de code qui fonctionne bien:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Sub ControleProcedureActive()
    'adapté dune procedure de JS
    Dim Lig As Long
    Dim NomProcedureActive As String
    With Application.VBE.ActiveCodePane 'recherche procedure en cours
    .GetSelection Lig, 0, 0, 0
    NomProcedureActive = .CodeModule.ProcOfLine(Lig, 0)
    End With
    MsgBox NomProcedureActive
    End Sub
    Le problème est que ce code ne fonctionne pas une fois l'application convertie en MDE.

    Quelqu'un à une idée?

  2. #2
    Membre chevronné
    Inscrit en
    Août 2006
    Messages
    1 588
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 1 588
    Points : 2 178
    Points
    2 178
    Par défaut
    Bonjour,
    Il faut donc ecrire le nom de la fonction comme paramètre
    Une petite routine pourrait remplacer le nom ainsi
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Call GestionErreur(Err.Number, Err.Description, "XXXX", Me.Name)
    deviendrait
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Call GestionErreur(Err.Number, Err.Description, "NomProcedureActive", Me.Name)
    Il faut donc lire les modules, récupérer le nom de la procedure puis remplacer XXXX par le nom de la procedure
    Mais est-ce que cela vaut la peine ?

  3. #3
    Membre à l'essai
    Inscrit en
    Février 2009
    Messages
    20
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 20
    Points : 19
    Points
    19
    Par défaut
    Bon, après quelques recherches infructueuses je crois comprendre que, bien que ce la ne soit pas impossible, je perdrais plus de temps à trouver une solution "automatisée" que d'inscrire le nom des procédures à la main! J'espérais sauver du temps et avoir une seule ligne "passe-partout" pour les applications à venir. Au moins, de cette manière, ça m'oblige à me reviser un peu!

Discussions similaires

  1. Réponses: 6
    Dernier message: 10/08/2014, 22h09
  2. Récupérer le nom de la page active du WebBrowser en XAML
    Par Pouknouki dans le forum Windows Phone
    Réponses: 9
    Dernier message: 23/05/2013, 14h58
  3. Réponses: 20
    Dernier message: 06/07/2010, 17h00
  4. [AC-2003] Récupérer le nom de la sub active
    Par pio_killer dans le forum VBA Access
    Réponses: 9
    Dernier message: 05/01/2010, 10h02

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