I denne artikkelen vil vi lage en makro for å sette inn en ny modul i en Excel -arbeidsbok.
Før vi kjører makroen, må vi spesifisere type og navn på modulen.
Som man kan se på skjermbildet, har vi bare en modul i arbeidsboken. I dette eksemplet vil vi legge til klassemodul i arbeidsboken.
Logisk forklaring
I denne artikkelen har vi opprettet to makroer, "CreateNewModule" og "CallingProcedure".
“CreateNewModule” -makroen brukes til å legge til en ny modul, avhengig av den angitte inngangen.
"CallingProcedure" -makroen brukes til å levere input og ringe hovedmodulen.
Kode forklaring
Angi ModuleComponent = Wbook.VBProject.VBComponents.Add (ModuleTypeIndex)
Koden ovenfor brukes til å legge til en ny modul i VBA -prosjektet.
ModuleComponent.Name = NewModuleName
Koden ovenfor brukes til å gi nytt navn til den innsatte komponenten.
ModuleTypeConst = Cint (Range ("D12"). Verdi)
Koden ovenfor brukes til å få heltallsverdi fra celle D12.
ModuleName = Sheet1.TextBox2.Value
Koden ovenfor brukes til å hente verdi fra tekstboksen.
Følg koden nedenfor
Option Explicit Sub CreateNewModule (ByVal ModuleTypeIndex As Integer, ByVal NewModuleName As String) 'Declaring variables Dim ModuleComponent As VBComponent Dim WBook As Workbook' Lage objekt for aktiv arbeidsbok Sett WBook = ActiveWorkbook Sett ModuleComponent = Ingenting På Feil Fortsett neste komponent ModuleComponent = WBook.VBProject.VBComponents.Add (ModuleTypeIndex) If Not ModuleComponent Is Nothing Then 'Renaming the new module ModuleComponent.Name = NewModuleName End If On Error GoTo 0 Set ModuleComponent = Nothing End Sub Subing CallingProcedure ()' Deklarere variabler Heltall Dim Modulenavn som streng 'Henter verdi av modulnavn og modultype ModuleTypeConst = CInt (Range ("D12"). Verdi) ModuleName = Sheet1.TextBox2.Value' Calling CreateNewModule CreateNewModule ModuleTypeConst, ModuleName End Sub Sub
Hvis du likte denne bloggen, del den med vennene dine på Facebook. Du kan også følge oss på Twitter og Facebook.
Vi vil gjerne høre fra deg, gi oss beskjed om hvordan vi kan forbedre arbeidet vårt og gjøre det bedre for deg. Skriv til oss på e -post