Een procedure toevoegen aan een module met VBA in Microsoft Excel

Anonim

U kunt code aan een module toevoegen zonder een apart tekstbestand te gebruiken dat de code bevat.
Onderstaande macro laat zien hoe dit kan. De macro moet worden aangepast om de code te bevatten die u wilt toevoegen:

Sub InsertProcedureCode (ByVal wb As Workbook, ByVal InsertToModuleName As String) ' voegt nieuwe code in module met de naam InsertModuleName in wb ' moet worden aangepast, afhankelijk van de code om Dim VBCM in te voegen als CodeModule Dim InsertLineIndex As Long On Error Hervat volgende Set VBCM = wb.VBProject .VBComponents(InsertToModuleName).CodeModule If Not VBCM Is Nothing Then With VBCM InsertLineIndex = .CountOfLines + 1 ' pas de volgende regels aan, afhankelijk van de code die u wilt invoegen .InsertLines InsertLineIndex, "Sub NewSubName()" & Chr(13) InsertLineIndex = InsertLineIndex + 1 .InsertLines InsertLineIndex, _ " Msgbox ""Hallo wereld!"",vbInformation,""Message Box Title""" & Chr(13) InsertLineIndex = InsertLineIndex + 1 .InsertLines InsertLineIndex, "End Sub" & Chr( 13) ' geen behoefte aan meer aanpassingen Einde met set VBCM = niets Einde indien bij fout GoTo 0 Einde Sub

Voorbeeld:

InsertProcedureCode Workbooks("WorkBookName.xls"), "Module1"