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

Macros et VBA Excel Discussion :

Bonjour, problème rencontré dans VBComponent


Sujet :

Macros et VBA Excel

  1. #1
    Membre du Club
    Homme Profil pro
    Amateur
    Inscrit en
    Avril 2012
    Messages
    49
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Amateur

    Informations forums :
    Inscription : Avril 2012
    Messages : 49
    Points : 48
    Points
    48
    Par défaut Bonjour, problème rencontré dans VBComponent
    Dans un fichier, des "CMD" sont auto implémentés selon les besoins de l'utilisateur. Ces CMD "écrivent" dans un module dédié. Mon programme fonctionne avec cependant un hic ! Suite à l'écriture de la nouvelle Sub, le programme se retrouve au final dans le code du module ... ce qui bien entendu n'est pas le but. Dans le code ci-dessous j'ai tenté de forcer un retour sur la feuille mais bien que l'écriture en cell(1,1) se réalise, au final le programme se termine tjrs par l'ouverture du module, le rendant ainsi accessible à l'utilisateur !

    Voici le code utilisé :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
     
    'TelNOM = Nom de la macro
    'TelNUM = Indice specifique du CMD
    '"Sub " & TelNOM & "():Call FAIREY(" & TelNUM & ") :End Sub" = La SUB écrite automatiquement
    'Nom_MODULE = Public Const du nom du module requis
    'Worksheets(F_W) = La feuille de travail du classeur
     
    Public Sub ECRIRE_DANS_MODULE(TelNOM As String, TelNUM As Integer)
    Application.VBE.ActiveVBProject.VBComponents(Nom_MODULE).Activate
        With Application.VBE.SelectedVBComponent
        Application.VBE.CodePanes(1).CodeModule.AddFromString "Sub " & TelNOM & "():Call FAIREY(" & TelNUM & ") :End Sub"
        End With
     
    Dim ws As Worksheet: Set ws = Application.ThisWorkbook.Worksheets(F_W)
        With ws
            .Activate
            .Cells(1, 1).Value = 1
        End With
    Set ws = Nothing
    End Sub
    En vous remerciant par avance, cordialement.

  2. #2
    Membre du Club
    Homme Profil pro
    Amateur
    Inscrit en
    Avril 2012
    Messages
    49
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Amateur

    Informations forums :
    Inscription : Avril 2012
    Messages : 49
    Points : 48
    Points
    48
    Par défaut OUPS !
    En fait je n'ai pas de problème si la couche VBA est fermée ... ce qui est bien sur le cas de l'utilisateur, désolé

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

Discussions similaires

  1. Problème heure dans un formulaire
    Par Faro dans le forum Access
    Réponses: 7
    Dernier message: 15/09/2005, 11h11
  2. [ZEOSLIB] Problème Insertion dans une table
    Par moscovisci dans le forum Bases de données
    Réponses: 1
    Dernier message: 09/06/2005, 12h05
  3. problème debodybackground dans une page php
    Par bertrand_declerck dans le forum Balisage (X)HTML et validation W3C
    Réponses: 4
    Dernier message: 04/02/2005, 22h39
  4. Problème alinéa dans textarea
    Par guitaros dans le forum Balisage (X)HTML et validation W3C
    Réponses: 7
    Dernier message: 23/12/2004, 00h07
  5. Problème formatage dans balise title / alt
    Par jflebegue dans le forum Mise en page CSS
    Réponses: 9
    Dernier message: 09/12/2004, 15h18

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