gestion des modules dans des classeurs EXCEL

Le
claude.vonknechten
Mon probleme.
J'ai ecrit des procedures contenu dans MODUL4.bas.
Je veux importer MODUL4.bas dans un certian nombre de classeur excel.
Plutot que d'ouvrir mes 30 classeurs excel et de faire un import (à chaque
modif dans MODUL4.bas il faut mettre à jour les 30 classeurs), quel pourrait
etre le code VB qui le ferait à ma place (les noms des classeurs sont dans
une feuille excel).

Merci d'avance pour toute suggestion, idée ou solution.

Claude.
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
papou
Le #15407211
Bonjour
Il faudrait poser ta question sur public.fr.excel.
Ceci étant, voici une manière de procéder (à adapter à ton cas) :

Sub ImportModule()
Dim Nombk$
Dim lebk As Workbook
Dim NomModule$
NomModule = "C:Documents and SettingspapouMes documents" _
& "Assistancempfemoduleperso.bas"
With Application.FileSearch
.NewSearch
.LookIn = "C:Documents and SettingspapouMes
documentsAssistancempfetests"
If .Execute() > 0 Then
For I = 1 To .FoundFiles.Count
Nombk = .FoundFiles(I)
Set lebk = Workbooks.Open(Nombk)
lebk.VBProject.VBComponents.Import NomModule
lebk.Close (True)
Next I

Else: MsgBox "pas de fichier trouvé dans le répertoire", vbInformation,
"Arrêt"
End If
MsgBox "Module moduleperso.bas importé dans les classeurs du répertoire
spécifié"
End With

End Sub



Cordialement
Pascal


"claude.vonknechten" dans le message de news:

Mon probleme.
J'ai ecrit des procedures contenu dans MODUL4.bas.
Je veux importer MODUL4.bas dans un certian nombre de classeur excel.
Plutot que d'ouvrir mes 30 classeurs excel et de faire un import (à chaque
modif dans MODUL4.bas il faut mettre à jour les 30 classeurs), quel
pourrait
etre le code VB qui le ferait à ma place (les noms des classeurs sont dans
une feuille excel).

Merci d'avance pour toute suggestion, idée ou solution.

Claude.


claude.vonknechten
Le #15406911
Merci beaucoup à Pascal pour sa réponse que j'ai réussi à mettre en oeuvre.
Par contre il me reste le problème induit.
Avant de faire l'import il me faut dabord supprimer le module 4 existant
avant d'en importer la nouvelle version.
C'est la syntaxe qui me pose problème:
lebk.VBProject.vbcomponents("module4").Remove NE MARCHE PAS!
lebk.VBProject.vbcomponents.Remove ("MODULE4) NE MARCHE PAS!
lebk.VBProject.vbcomponents.MODULE4.remove NE MARCHE PAS!

Merci pour votre aide précieuse,

Cordialement
Claude.

"claude.vonknechten" a écrit :

Mon probleme.
J'ai ecrit des procedures contenu dans MODUL4.bas.
Je veux importer MODUL4.bas dans un certian nombre de classeur excel.
Plutot que d'ouvrir mes 30 classeurs excel et de faire un import (à chaque
modif dans MODUL4.bas il faut mettre à jour les 30 classeurs), quel pourrait
etre le code VB qui le ferait à ma place (les noms des classeurs sont dans
une feuille excel).

Merci d'avance pour toute suggestion, idée ou solution.

Claude.


papou
Le #15406901
Bonjour

On Error Resume Next
With lebk.VBProject.VBComponents
.Remove .Item("Module4")
End With
On Error GoTo 0

Cordialement
Pascal

"claude.vonknechten" dans le message de news:

Merci beaucoup à Pascal pour sa réponse que j'ai réussi à mettre en
oeuvre.
Par contre il me reste le problème induit.
Avant de faire l'import il me faut dabord supprimer le module 4 existant
avant d'en importer la nouvelle version.
C'est la syntaxe qui me pose problème:
lebk.VBProject.vbcomponents("module4").Remove NE MARCHE PAS!
lebk.VBProject.vbcomponents.Remove ("MODULE4) NE MARCHE PAS!
lebk.VBProject.vbcomponents.MODULE4.remove NE MARCHE PAS!

Merci pour votre aide précieuse,

Cordialement
Claude.

"claude.vonknechten" a écrit :

Mon probleme.
J'ai ecrit des procedures contenu dans MODUL4.bas.
Je veux importer MODUL4.bas dans un certian nombre de classeur excel.
Plutot que d'ouvrir mes 30 classeurs excel et de faire un import (à
chaque
modif dans MODUL4.bas il faut mettre à jour les 30 classeurs), quel
pourrait
etre le code VB qui le ferait à ma place (les noms des classeurs sont
dans
une feuille excel).

Merci d'avance pour toute suggestion, idée ou solution.

Claude.




claude.vonknechten
Le #15406871
Quel ane je suis, j'ai bien vu les objets "item" dans la fenetre espion mais
je n'ai pas pensé à les nommer dans le nom de l'objet.
En tout cas merci beaucoup à Pascal pour sa réponse et son aide

Claude
"claude.vonknechten" a écrit :

Mon probleme.
J'ai ecrit des procedures contenu dans MODUL4.bas.
Je veux importer MODUL4.bas dans un certian nombre de classeur excel.
Plutot que d'ouvrir mes 30 classeurs excel et de faire un import (à chaque
modif dans MODUL4.bas il faut mettre à jour les 30 classeurs), quel pourrait
etre le code VB qui le ferait à ma place (les noms des classeurs sont dans
une feuille excel).

Merci d'avance pour toute suggestion, idée ou solution.

Claude.


Publicité
Poster une réponse
Anonyme