Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Comment exporter module dans nouveau classeur

8 réponses
Avatar
IsaS
Bonjour à tous,

Donc voici mon pb.
J'ai un fichier (classeur1) à partir duquel (via des macros) je crée de
nouveaux classeurs, que je sauvegarde automatiquement.

Jusque-là tout va bien.

Seulement, je voudrai pouvoir utiliser les macros du classeur1 dans le
classeur2, et ceci sans avoir à ouvrir le classeur1 ... donc exporter les
modules et les sauvegarder avec le classeur2.

Est-ce possible déjà ?

Merci de votre aide

Isabelle

8 réponses

Avatar
anomymousA
bonjour,

pourquoi ne pas utiliser une fichier modèle (.xlt) pour créer tes nouveaux
classeurs. Les macros existeraient dans les fichiers sans que tu aies besoin
de les importer ?


Bonjour à tous,

Donc voici mon pb.
J'ai un fichier (classeur1) à partir duquel (via des macros) je crée de
nouveaux classeurs, que je sauvegarde automatiquement.

Jusque-là tout va bien.

Seulement, je voudrai pouvoir utiliser les macros du classeur1 dans le
classeur2, et ceci sans avoir à ouvrir le classeur1 ... donc exporter les
modules et les sauvegarder avec le classeur2.

Est-ce possible déjà ?

Merci de votre aide

Isabelle


Avatar
IsaS
Ce serait une idée mais ca veut dire qu'il faut envoyer aussi le modèle .xlt
aux utilisateurs finaux. Ca passe pas.
Y a-t-il une commande VBA qui importe/exporte les modules d'un classeur à un
autre ?
Isabelle

"" wrote:

bonjour,

pourquoi ne pas utiliser une fichier modèle (.xlt) pour créer tes nouveaux
classeurs. Les macros existeraient dans les fichiers sans que tu aies besoin
de les importer ?


Bonjour à tous,

Donc voici mon pb.
J'ai un fichier (classeur1) à partir duquel (via des macros) je crée de
nouveaux classeurs, que je sauvegarde automatiquement.

Jusque-là tout va bien.

Seulement, je voudrai pouvoir utiliser les macros du classeur1 dans le
classeur2, et ceci sans avoir à ouvrir le classeur1 ... donc exporter les
modules et les sauvegarder avec le classeur2.

Est-ce possible déjà ?

Merci de votre aide

Isabelle




Avatar
Kobaya
Salut,

ne peux-tu pas faire une copie de Classeur1 plutôt que de créer un nouveau
classeur vierge? Ceci te permettrait de conserver le code...


Bonjour à tous,

Donc voici mon pb.
J'ai un fichier (classeur1) à partir duquel (via des macros) je crée de
nouveaux classeurs, que je sauvegarde automatiquement.

Jusque-là tout va bien.

Seulement, je voudrai pouvoir utiliser les macros du classeur1 dans le
classeur2, et ceci sans avoir à ouvrir le classeur1 ... donc exporter les
modules et les sauvegarder avec le classeur2.

Est-ce possible déjà ?

Merci de votre aide

Isabelle


Avatar
anomymousA
bonjour, IsaS

suite à ta demande, l'exemple ci-dessous tiré de l'excellente bibliothèque
de programmes du site de F Sigonneau.

Sub CopieFeuilleEtModule()
Dim Wbk As Workbook, tmpBas$

'copier la feuille dans un nouveau classeur
Sheets("Feuil1").Copy
Set Wbk = ActiveWorkbook

'ajouter le module de code contenant les fonctions
tmpBas = "c:Module1.bas"
ThisWorkbook.VBProject.VBComponents("Module1").Export tmpBas
Wbk.VBProject.VBComponents.Import tmpBas
Kill tmpBas

End Sub

A+


Bonjour à tous,

Donc voici mon pb.
J'ai un fichier (classeur1) à partir duquel (via des macros) je crée de
nouveaux classeurs, que je sauvegarde automatiquement.

Jusque-là tout va bien.

Seulement, je voudrai pouvoir utiliser les macros du classeur1 dans le
classeur2, et ceci sans avoir à ouvrir le classeur1 ... donc exporter les
modules et les sauvegarder avec le classeur2.

Est-ce possible déjà ?

Merci de votre aide

Isabelle


Avatar
IsaS
Merci beaucoups.
Je vais essayer d'integrer ce code à mes modules.

Isabelle

"anomymousA" wrote:

bonjour, IsaS

suite à ta demande, l'exemple ci-dessous tiré de l'excellente bibliothèque
de programmes du site de F Sigonneau.

Sub CopieFeuilleEtModule()
Dim Wbk As Workbook, tmpBas$

'copier la feuille dans un nouveau classeur
Sheets("Feuil1").Copy
Set Wbk = ActiveWorkbook

'ajouter le module de code contenant les fonctions
tmpBas = "c:Module1.bas"
ThisWorkbook.VBProject.VBComponents("Module1").Export tmpBas
Wbk.VBProject.VBComponents.Import tmpBas
Kill tmpBas

End Sub

A+


Bonjour à tous,

Donc voici mon pb.
J'ai un fichier (classeur1) à partir duquel (via des macros) je crée de
nouveaux classeurs, que je sauvegarde automatiquement.

Jusque-là tout va bien.

Seulement, je voudrai pouvoir utiliser les macros du classeur1 dans le
classeur2, et ceci sans avoir à ouvrir le classeur1 ... donc exporter les
modules et les sauvegarder avec le classeur2.

Est-ce possible déjà ?

Merci de votre aide

Isabelle




Avatar
IsaS
J'ai donc essayé ce code mais j'ai un pb au niveau de VBProject.
Le message c'est
"L'accès par programme au projet Visual Basic n'est pas fiable" et je tombe
sur le deboggueur.
ou
" La methode 'VBProject' de l'objet '_Workbook' a échoué"

Le code que j'ai ecrit est le suivant :
tmpBas = SourcePath & "Module15.bas"
Workbooks(SourceWorkbook.name).VBProject.VBComponents("Module15").Export
tmpBas
Workbooks(DestinationWorkbook.name).VBProject.VBComponents.Import tmpBas

Merci


bonjour, IsaS

suite à ta demande, l'exemple ci-dessous tiré de l'excellente bibliothèque
de programmes du site de F Sigonneau.

Sub CopieFeuilleEtModule()
Dim Wbk As Workbook, tmpBas$

'copier la feuille dans un nouveau classeur
Sheets("Feuil1").Copy
Set Wbk = ActiveWorkbook

'ajouter le module de code contenant les fonctions
tmpBas = "c:Module1.bas"
ThisWorkbook.VBProject.VBComponents("Module1").Export tmpBas
Wbk.VBProject.VBComponents.Import tmpBas
Kill tmpBas

End Sub

A+


Bonjour à tous,

Donc voici mon pb.
J'ai un fichier (classeur1) à partir duquel (via des macros) je crée de
nouveaux classeurs, que je sauvegarde automatiquement.

Jusque-là tout va bien.

Seulement, je voudrai pouvoir utiliser les macros du classeur1 dans le
classeur2, et ceci sans avoir à ouvrir le classeur1 ... donc exporter les
modules et les sauvegarder avec le classeur2.

Est-ce possible déjà ?

Merci de votre aide

Isabelle




Avatar
Clément Marcotte
Bonjour,

"L'accès par programme au projet Visual Basic n'est pas fiable" et
je tombe

sur le deboggueur.


Ça c'est du zèle implanté depuis Excel 2002.

Pour lui serrer les serrer les ouies :

Outils - Options - Sécurité - Sécurité des macros - Sources fiables

Cocher Faire confiance au projet Visual Basic.

" La methode 'VBProject' de l'objet '_Workbook' a échoué"


Cela pourrait bien être similaire à l'autre message d'erreur. Sinon
?????????

Avatar
IsaS
Merci Bien Clément, Merci AnonymousA
Vous m'avez été d'une grand aide.

Ca marche maintenant.

Bonne continuation à tous.
Isabelle

"Clément Marcotte" wrote:

Bonjour,

"L'accès par programme au projet Visual Basic n'est pas fiable" et
je tombe

sur le deboggueur.


Ça c'est du zèle implanté depuis Excel 2002.

Pour lui serrer les serrer les ouies :

Outils - Options - Sécurité - Sécurité des macros - Sources fiables

Cocher Faire confiance au projet Visual Basic.

" La methode 'VBProject' de l'objet '_Workbook' a échoué"


Cela pourrait bien être similaire à l'autre message d'erreur. Sinon
?????????