I denne artikel vil vi oprette en makro til at indsætte et nyt modul i en Excel -projektmappe.
Før vi kører makroen, skal vi angive modulets type og navn.
Som man kan se på skærmbilledet, har vi kun et modul i projektmappen. I dette eksempel tilføjer vi klassemodul til projektmappen.
Logisk forklaring
I denne artikel har vi oprettet to makroer, "CreateNewModule" og "CallingProcedure".
Makroen "CreateNewModule" bruges til at tilføje et nyt modul afhængigt af det angivne input.
Makroen "CallingProcedure" bruges til at levere input og kalde hovedmodulet.
Kode forklaring
Indstil ModuleComponent = Wbook.VBProject.VBComponents.Add (ModuleTypeIndex)
Ovenstående kode bruges til at tilføje et nyt modul i VBA -projektet.
ModuleComponent.Name = NewModuleName
Ovenstående kode bruges til at omdøbe den indsatte komponent.
ModuleTypeConst = Cint (Range ("D12"). Værdi)
Ovenstående kode bruges til at få heltalværdi fra celle D12.
ModuleName = Sheet1.TextBox2.Value
Ovenstående kode bruges til at hente værdi fra tekstboks.
Følg venligst nedenstående for koden
Option Eksplicit sub CreateNewModule (ByVal ModuleTypeIndex As Integer, ByVal NewModuleName As String) 'Declaring variables Dim ModuleComponent As VBComponent Dim WBook As Workbook' Oprettelse af objekt for aktiv projektmappe Set WBook = ActiveWorkbook Set ModuleComponent = Intet på fejl Genoptag næste komponent ModuleComponent = WBook.VBProject.VBComponents.Add (ModuleTypeIndex) If Not ModuleComponent Is Nothing Herefter 'Omdøber det nye modul ModuleComponent.Name = NewModuleName End If On Error GoTo 0 Set ModuleComponent = Intet slut Sub Sub CallingProcedure ()' Deklarér variabler Heltal Dim Modulnavn som streng 'Henter værdi af modulnavn og modultype ModuleTypeConst = CInt (Range ("D12"). Værdi) ModuleName = Sheet1.TextBox2.Value' Calling CreateNewModule CreateNewModule ModuleTypeConst, ModuleName End Sub Sub
Hvis du kunne lide denne blog, kan du dele den med dine venner på Facebook. Du kan også følge os på Twitter og Facebook.
Vi vil meget gerne høre fra dig, lad os vide, hvordan vi kan forbedre vores arbejde og gøre det bedre for dig. Skriv til os på e -mail -stedet