V tomto článku vytvoříme makro pro vložení nového modulu do sešitu aplikace Excel.
Před spuštěním makra musíme určit typ a název modulu.
Jak je vidět na snímku obrazovky, v sešitu máme pouze jeden modul. V tomto příkladu přidáme do sešitu modul třídy.
Logické vysvětlení
V tomto článku jsme vytvořili dvě makra, „CreateNewModule“ a „CallingProcedure“.
Makro „CreateNewModule“ se používá k přidání nového modulu v závislosti na zadaném vstupu.
Makro „CallingProcedure“ slouží k zajištění vstupu a volání hlavního modulu.
Vysvětlení kódu
Nastavit ModuleComponent = Wbook.VBProject.VBComponents.Add (ModuleTypeIndex)
Výše uvedený kód se používá k přidání nového modulu do projektu VBA.
ModuleComponent.Name = NewModuleName
Výše uvedený kód slouží k přejmenování vložené komponenty.
ModuleTypeConst = Cint (rozsah ("D12"). Hodnota)
Výše uvedený kód se používá k získání celočíselné hodnoty z buňky D12.
ModuleName = Sheet1.TextBox2.Value
Výše uvedený kód se používá k získání hodnoty z textového pole.
Pro kód prosím postupujte níže
Volba Explicitní Sub CreateNewModule (ByVal ModuleTypeIndex As Integer, ByVal NewModuleName As String) 'Deklarování proměnných Dim ModuleComponent As VBComponent Dim WBook As Workbook' Vytváření objektu aktivního sešitu Set WBook = ActiveWorkbook Set ModuleComponent = Nothing On Error Resume Next 'Přidání nového modulu ModuleComponent = WBook.VBProject.VBComponents.Add (ModuleTypeIndex) If Not ModuleComponent Is Nothing Then 'Přejmenování nového modulu ModuleComponent.Name = NewModuleName End If On Error GoTo 0 Set ModuleComponent = Nothing End Sub Sub CallingProcedure ()' DecTrepe variables Modu Integer Dim ModuleName jako řetězec 'Získání hodnoty názvu modulu a typu modulu ModuleTypeConst = CInt (Rozsah ("D12"). Hodnota) ModuleName = Sheet1.TextBox2.Value' Volání CreateNewModule CreateNewModule ModuleTypeConst, ModuleName End Sub
Pokud se vám tento blog líbil, sdílejte ho se svými přáteli na Facebooku. Také nás můžete sledovat na Twitteru a Facebooku.
Rádi bychom od vás slyšeli, dejte nám vědět, jak můžeme zlepšit naši práci a zlepšit ji pro vás. Napište nám na e -mail