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 :

Import module en automatique


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Candidat au Club
    Homme Profil pro
    Consultant SAP
    Inscrit en
    Août 2015
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Consultant SAP

    Informations forums :
    Inscription : Août 2015
    Messages : 3
    Par défaut Import module en automatique
    Bonjour,

    J'ai déjà une macro en place qui génère automatiquement un fichier.

    Je souhaite rajouter sur cette dernière la génération d'un bouton sur le fichier excel (fait).

    Puis lorsque l'on clique sur le bouton cela va appeler le module nouvellement créé (fait aussi).

    Mon soucis réside dans le fait de basculer en automatique le module en question du fichier source vers le fichier destination.

    A savoir que le fichier destination est créé de la manière suivante:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Workbooks(fichier_rebut).SaveAs (chemin_rebut & "/UAP1 rebuts " & "J" & Day(Now) & "-" & Month(Now) & "-" & Year(Now))
    Pour l'export, aucun soucis:
    ActiveWorkbook.VBProject.VBComponents("Validation").Export ("XXX\Validation.bas") marche parfaitement.

    Par contre, comment importer ce dernier (Validation.bas) dans le fichier nouvellement créé et cela automatiquement depuis la même macro ?

    J'ai bien Application.VBE.ActiveVBProject.VBComponents.Import ("XXX\Validation.bas") mais je n'arrive pas à indiquer le fichier de destination.

    Merci d'avance !

  2. #2
    Membre Expert Avatar de mayekeul
    Inscrit en
    Août 2005
    Messages
    1 369
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 1 369
    Par défaut
    Bonjour,

    et que se passe-t-il? Que veux tu dire par :
    ... je n'arrive pas à indiquer le fichier de destination.

  3. #3
    Candidat au Club
    Homme Profil pro
    Consultant SAP
    Inscrit en
    Août 2015
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Consultant SAP

    Informations forums :
    Inscription : Août 2015
    Messages : 3
    Par défaut
    Application.VBE.ActiveVBProject.VBComponents.Import va importer vers le projet actif, je souhaite viser le projet nouvellement créer.

  4. #4
    Membre Expert Avatar de mayekeul
    Inscrit en
    Août 2005
    Messages
    1 369
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 1 369
    Par défaut
    c'est bien ce que je pensait

    oriente toi plutôt vers une forme comme celle-ci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    destinationbook.VBProject.VBComponents.Import

  5. #5
    Candidat au Club
    Homme Profil pro
    Consultant SAP
    Inscrit en
    Août 2015
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Consultant SAP

    Informations forums :
    Inscription : Août 2015
    Messages : 3
    Par défaut
    J'ai essayé avec un destinationbook = "XXX\test.xlsx" précédemment créé sans succès.

    A défaut de l'importer depuis un export, existe-il un moyen de créer un module de classe à la volée lors de la génération du fichier ?

  6. #6
    Membre Expert Avatar de mayekeul
    Inscrit en
    Août 2005
    Messages
    1 369
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 1 369
    Par défaut
    Le code ci-dessous fonctionne sans problèmes.

    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
    Option Explicit
    Public Const TEST_BAS As String = "C:\test.bas"
     
    Sub imporexpor()
    Dim wb As Workbook
     
    ActiveWorkbook.VBProject.VBComponents("test").Export TEST_BAS
     
    Set wb = Application.Workbooks.Add
     
    ThisWorkbook.Activate
     
    wb.VBProject.VBComponents.Import TEST_BAS
     
    End Sub
    Et pour répondre à ta deuxièmes question, oui, cela peut-être fait sans trop de problèmes
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ActiveWorkbook.VBProject.VBComponents.Add(vbext_ct_StdModule).CodeModule.AddFromString(STRING_A_DEFINIR)

Discussions similaires

  1. spécifications d'importation modulables
    Par Ne0zenith dans le forum VBA Access
    Réponses: 3
    Dernier message: 04/06/2009, 16h56
  2. importer un fichier automatiquement
    Par lecureuil dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 2
    Dernier message: 15/06/2007, 14h34
  3. [VBA]Import modules de classe dans Access 2003
    Par pht33 dans le forum VBA Access
    Réponses: 1
    Dernier message: 24/04/2007, 15h45
  4. importer module à partir d'une chaîne de caractères
    Par j_p_g dans le forum Général Python
    Réponses: 2
    Dernier message: 23/04/2007, 15h15
  5. [wsad/erreur import war]Error importing module file
    Par valal dans le forum Websphere
    Réponses: 1
    Dernier message: 05/09/2006, 15h01

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