VBA mooduli kopeerimine - Exceli näpunäited

Lang L: none (table-of-contents)

Michelle kirjutab:

Oleme välja töötanud Exceli rakenduse, mis loob igale 54 maaklerile levitamiseks ainulaadse Exceli töövihiku. Ma pean lisama igasse 54 Exceli töövihikusse mitu VBA makrot, mida maakleritele jagatakse. Kuidas saab kopeerida VBA mooduli algsest Exceli töövihikust igasse uude Exceli töövihikusse?

See on suurepärane küsimus, Michelle. Arvutustabelite () kasutamine on lihtne. Töölehe kopeerimiseks uude töövihikusse on käsk Kopeeri, kuid mooduli kopeerimine uude töövihikusse pole nii lihtne. Lahendus hõlmab üksuse mooduli eksportimist ja seejärel importimist igasse 54 maakleri töövihikusse, kui need on valmis. Siin on osa teie koodist koos lahendusega.

' Delete any old stray copies of the module1 On Error Resume Next Kill ("C:MrXL1.bas") On Error GoTo 0 ' Export Module 1 ActiveWorkbook.VBProject.VBComponents("module1").Export ("c:MrXL1.bas") For x = 1 to 54 ThisBroker = Sheets("BrokerList").range("A" & x).value '… customization of plan omited for brevity Sheets(Array("Menu", "Plan")).Copy NBName = ActiveWorkbook.Name ' new book name ' Import Module 1 to this new book Application.VBE.ActiveVBProject.VBComponents.Import ("c:MrXL1.bas") ActiveWorkbook.SaveAs Filename:=ThisBroker ActiveWorkbook.Close Next x Kill ("C:MrXl1.bas")

VBE.ActiveProject.VBComponents.Export ja VBE.ActiveProject.VBComponents … Impordikäsklused hoolitsevad makrode kopeerimise eest uutesse raamatutesse.

Excelis 2002 ja uuemates versioonides peate lubama makrol töövihikusse koodi lisada. Avage Tööriistad, makro, turvalisus. Klõpsake vahekaardil 2. Usaldusväärsed väljaandjad. Valige vasakus alanurgas Usaldusväärne juurdepääs Visual Basic Projectile. Rakenduses Excel 2007 avage Office'i ikoon, Exceli suvandid, Usalduskeskus, Usalduskeskuse sätted, Makro sätted ja valige VBA projektiobjekti mudelile Usaldusväärne juurdepääs.

Ettevaatust

Moodulite eksportimise ja importimise käske ning käske uute makrode olemasolevasse töövihikusse sisestamiseks nimetatakse ühiselt Visual Basicu laiendatavuseks või VBE-ks. Kui teie töövihik kasutab VBE-käske, on suur tõenäosus, et viiruseskannerid märgistavad töövihiku. See on valepositiivne. Väidetava viiruse nime nimes on peaaegu alati "heuristiline". See tähendab, et skanner näeb DLL-kõnesid, mis tunduvad kahtlased, kuid mis ei vasta tingimata teadaolevatele viirustele. Tavaliselt võite kirjutada viirusetõrjetarkvara tootjale ja taotleda oma Exceli töövihiku valgete nimekirja lisamist pärast seda, kui olete selgitanud, mida teete ja miks see on hea.

Huvitavad Artiklid...