Możesz dodać kod do modułu bez używania oddzielnego pliku tekstowego zawierającego kod.
Poniższe makro pokazuje, jak można to zrobić. Makro musi być dostosowane tak, aby zawierało kod, który chcesz dodać:
Sub InsertProcedureCode(ByVal wb As Workbook, ByVal InsertToModuleName As String) ' wstawia nowy kod w module o nazwie InsertModuleName w wb ' wymaga dostosowania w zależności od kodu, aby wstawić Dim VBCM As CodeModule Dim InsertLineIndex As Long On Error Resume Next Set VBCM = wb.VBProject .VBComponents(InsertToModuleName).CodeModule Jeśli nie VBCM to nic, to z VBCM InsertLineIndex = .CountOfLines + 1 ' dostosuj następne wiersze w zależności od kodu, który chcesz wstawić .InsertLines InsertLineIndex, "Sub NewSubName()" & Chr(13) InsertLineIndex = InsertLineIndex + 1 .InsertLines InsertLineIndex, _ " Msgbox ""Witaj świecie!",vbInformation,""Tytuł pola wiadomości""" & Chr(13) InsertLineIndex = InsertLineIndex + 1 .InsertLines InsertLineIndex, "End Sub" & Chr( 13) „nie ma potrzeby dalszego dostosowywania End With Set VBCM = Nothing End If On Error GoTo 0 End Sub
Przykład:
InsertProcedureCode Workbooks("NazwaKsiążki.xls"), "Moduł1"