Bonjour le Forum,
J’ai crée une macro qui importe automatiquement un fichier .BAS (sauvegarde de module VBA).
Dans mon interface VBA, j’ai donc un nouveau module qui s’ajoute avec son nom par exemple MonModule.
Si j’ouvre un deuxième .BAS, je vais avoir un nouveau nom qui va apparaître genre MonModule22.
J’aurais besoin de récupérer le nom de ce module importé, pour pouvoir après faire une création automatique de commandebar avec des beaux boutons correspondants aux macros de ce module.
Comment faire ?
Si dessous mon code :
Sub LoadModule()
'
' Cette Macro Charge un fichier Module .Bas
' Pratique pour les développements spécifiques à un service
'
Dim TmpBas As String
Dim Ws As Workbook
Set Ws = ActiveWorkbook
'ajouter le module de code contenant les fonctions
If Ws Is Nothing Then
MsgBox 'Pas de feuille Excel ouverte' & vbCrLf & 'Impossible d'ouvrir un module', vbCritical, 'Attention ...'
Exit Sub
Else
TmpBas = Application.GetOpenFilename(filefilter:='Fichier de Module (*.BAS), *.bas', Title:='Quel Module ?') ', MultiSelect = false)
If TmpBas = 'Faux' Or TmpBas = '' Then
Exit Sub
End If
ActiveWorkbook.VBProject.VBComponents.Import TmpBas
‘------ je voudrais un truc du genre : ----
NomdeModule = nom du module contenu dans le fichier TmpBas.(Ex : Module1)
‘---- Merci
CreateBarre
MsgBox 'Module importé avec succès !!', vbOKOnly, 'Résultat ..'
End If
End Sub
Merci d'avance
++
Creepy
J’ai crée une macro qui importe automatiquement un fichier .BAS (sauvegarde de module VBA).
Dans mon interface VBA, j’ai donc un nouveau module qui s’ajoute avec son nom par exemple MonModule.
Si j’ouvre un deuxième .BAS, je vais avoir un nouveau nom qui va apparaître genre MonModule22.
J’aurais besoin de récupérer le nom de ce module importé, pour pouvoir après faire une création automatique de commandebar avec des beaux boutons correspondants aux macros de ce module.
Comment faire ?
Si dessous mon code :
Sub LoadModule()
'
' Cette Macro Charge un fichier Module .Bas
' Pratique pour les développements spécifiques à un service
'
Dim TmpBas As String
Dim Ws As Workbook
Set Ws = ActiveWorkbook
'ajouter le module de code contenant les fonctions
If Ws Is Nothing Then
MsgBox 'Pas de feuille Excel ouverte' & vbCrLf & 'Impossible d'ouvrir un module', vbCritical, 'Attention ...'
Exit Sub
Else
TmpBas = Application.GetOpenFilename(filefilter:='Fichier de Module (*.BAS), *.bas', Title:='Quel Module ?') ', MultiSelect = false)
If TmpBas = 'Faux' Or TmpBas = '' Then
Exit Sub
End If
ActiveWorkbook.VBProject.VBComponents.Import TmpBas
‘------ je voudrais un truc du genre : ----
NomdeModule = nom du module contenu dans le fichier TmpBas.(Ex : Module1)
‘---- Merci
CreateBarre
MsgBox 'Module importé avec succès !!', vbOKOnly, 'Résultat ..'
End If
End Sub
Merci d'avance
++
Creepy