Ajouter une procédure à un module en utilisant VBA dans Microsoft Excel
Vous pouvez ajouter du code à un module sans utiliser de fichier texte distinct contenant le code.
La macro ci-dessous montre comment cela peut être fait. La macro doit être personnalisée pour contenir le code que vous souhaitez ajouter:
Sub InsertProcedureCode(ByVal wb As Workbook, ByVal InsertToModuleName As String) ' inserts new code in module named InsertModuleName in wb ' needs customizing depending on the code to insert Dim VBCM As CodeModule Dim InsertLineIndex As Long On Error Resume Next Set VBCM = wb.VBProject.VBComponents(InsertToModuleName).CodeModule If Not VBCM Is Nothing Then With VBCM InsertLineIndex = .CountOfLines + 1 ' customize the next lines depending on the code you want to insert .InsertLines InsertLineIndex, "Sub NewSubName()" & Chr(13) InsertLineIndex = InsertLineIndex + 1 .InsertLines InsertLineIndex, _ " Msgbox ""Hello World!"",vbInformation,""Message Box Title""" & Chr(13) InsertLineIndex = InsertLineIndex + 1 .InsertLines InsertLineIndex, "End Sub" & Chr(13) ' no need for more customizing End With Set VBCM = Nothing End If On Error GoTo 0 End Sub
Exemple:
InsertProcedureCode Workbooks("WorkBookName.xls"), "Module1"