Salut,
Si tes fichiers sont tous dans le même repertoire, et ton module tu l'as déjà exporté .
Const Chemin$ = "C:\lenomdurépertoire" 'adapter le nom du dossier
sub Princ()
Dim T, C As Workbook
Dim I&
Application.ScreenUpdating = False
T = ChercheFichier("*.xls", Chemin)
If IsArray(T) Then
For I = LBound(T) To UBound(T)
Set C = Workbooks.Open(T(I))
SupprModule c,"Lenomdumodule" ' à adapter
importmodule c,"C:\Lefichier.bas" ' à adapter
next i
end if
end sub
Function ChercheFichier(NomF$, Rep$, Optional Sourep As Boolean = False)'Zon
Dim I&, Tablo
On Error Resume Next
With Application.FileSearch
.NewSearch
.LookIn = Rep
.Filename = NomF
.SearchSubFolders = Sourep
.Execute
ReDim Tablo(1 To .FoundFiles.Count)
For I = 1 To .FoundFiles.Count
Tablo(I) = .FoundFiles(I)
Next I
End With
On Error GoTo 0
ChercheFichier = IIf(I > 1, Tablo, "Pas de fichier trouvé " & Rep)
End Function
Sub ImportModule(C As Workbook, NomMod$)
On Error Resume Next
With C.VBProject.VBComponents
.Import NomMod
End With
End Sub
Sub SupprModule(C As Workbook, NomMod$)
With C.VBProject.VBComponents
.Remove .Item(NomMod)
End With
End Sub
A+++