Bonjour Patrick, Michel
Tant qu'à faire , Michel, on peut directement utiliser ton Object "Vbc" sans passer par la variable "NomModule" :
With Vbc.CodeModule
X = .CountOfLines
Etc etc
Et sinon une autre approche avec "AddFromString"
Sub NewModuleAddFromString()
Dim TheNewModule As VBComponent
Dim TheMacro As String
TheMacro = "Sub Test()" & vbCrLf & "MsgBox ""Le forum Xld"",VBinformation " & vbCrLf & "End Sub"
Set Vbc = ThisWorkbook.VBProject.VBComponents.Add(vbext_ct_StdModule)
Vbc.CodeModule.AddFromString TheMacro
End Sub
NB pour écrire dans VBE, sous XP penser aussi à cocher dans Excel / Outils / Macro / Sécurité / Second Onglet "Faire Confiance au Projet VB" (ou quelque chose comme çà car c'est de mémoire là !)
Bon Dimanche à tous et toutes@+Thierry