Vytvorte nový modul pomocou jazyka VBA v programe Microsoft Excel

Anonim

V tomto článku vytvoríme makro na vloženie nového modulu do zošita programu Excel.

Pred spustením makra musíme zadať typ a názov modulu.

Ako vidíte na obrázku, v zošite máme iba jeden modul. V tomto prípade pridáme do zošita modul triedy.

Logické vysvetlenie

V tomto článku sme vytvorili dve makrá, „CreateNewModule“ a „CallingProcedure“.

Makro „CreateNewModule“ sa používa na pridanie nového modulu v závislosti od zadaného vstupu.

Makro „CallingProcedure“ sa používa na poskytnutie vstupu a volanie hlavného modulu.

Vysvetlenie kódu

Nastaviť ModuleComponent = Wbook.VBProject.VBComponents.Add (ModuleTypeIndex)

Vyššie uvedený kód sa používa na pridanie nového modulu do projektu VBA.

ModuleComponent.Name = NewModuleName

Vyššie uvedený kód slúži na premenovanie vloženého komponentu.

ModuleTypeConst = Cint (rozsah („D12“). Hodnota)

Vyššie uvedený kód sa používa na získanie celočíselnej hodnoty z bunky D12.

ModuleName = Sheet1.TextBox2.Value

Vyššie uvedený kód sa používa na získanie hodnoty z textového poľa.

Pri kódovaní postupujte podľa nižšie uvedených pokynov

 Možnosť Explicitná podskupina CreateNewModule (ByVal ModuleTypeIndex As Integer, ByVal NewModuleName As String) „Deklarovanie premenných Dim ModuleComponent As VBComponent Dim WBook As Workbook“ Vytváranie objektu aktívneho zošita Sada WBook = ActiveWorkbook Sada ModuleComponent = nič pri chybe Pokračovať Nastaviť nový modul ModuleComponent = WBook.VBProject.VBComponents.Add (ModuleTypeIndex) Ak nie je ModuleComponent nie je nič, potom 'Premenovanie nového modulu ModuleComponent.Name = NewModuleName Koniec Ak sa vyskytne chyba GoTo 0 Nastaviť ModuleComponent = nič Koniec Sub Sub Sub CallingProcedure ()' DecTrepe variables Modu Integer Dim ModuleName ako reťazec 'Získanie hodnoty názvu modulu a typu modulu ModuleTypeConst = CInt (Rozsah ("D12"). Hodnota) ModuleName = Sheet1.TextBox2.Value' Výzva CreateNewModule CreateNewModule ModuleTypeConst, ModuleName Koniec Sub 

Ak sa vám tento blog páčil, zdieľajte ho so svojimi priateľmi na Facebooku. Môžete nás tiež sledovať na Twitteri a Facebooku.

Budeme radi, ak sa nám ozvete, dajte nám vedieť, ako môžeme zlepšiť našu prácu a zlepšiť ju pre vás. Napíšte nám na emailovú stránku