VBComponents Collection Methods






Parameters: ComponentType. Adds a new, built-in VBComponent to the project. The ComponentType can be one ofvbext_ct_StdModule, vbext_ct_ClassModule, or vbext_ct_MSForm.



Parameters: ProgId. Adds a new, custom VBComponent to the project. The result is always of type vbext_ct_ ActiveXDesigner. It seems that custom VB components can only be added to ActiveX DLL projects and not to Excel workbook projects.



Parameters: FileName. Adds a new VBComponent to the project from a file (usually a previously exported VBComponent).


Parameters: VBComponent. Removes a VBComponent from a project.

Many of the examples in this section and in Chapter 26 use the VBComponent object and its properties and methods. The example that follows exports a UserForm from the workbook containing the code, imports it into a new workbook, and renames it. It then adds a standard module, fills in some code to show the form, then calls the routine to show the form in the new workbook:

Sub CopyAndShowUserForm()

Dim oNewBk As Workbook, oVBC As VBIDE.VBComponent

'Create a new workbook Set oNewBk = Workbooks.Add

'Export a UserForm from this workbook to disk

ThisWorkbook.VBProject.VBComponents("UserForml").Export "c:\temp.

. frm"

'Import the UserForm into the new workbook

Set oVBC = oNewBk.VBProject.VBComponents.Import("c:\temp.frm")

'Rename the UserForm oVBC.Name = "MyForm"

'Add a standard module to the new workbook

Set oVBC = oNewBk.VBProject.VBComponents.Add(vbext_ct_StdModule)

'Add some code to the standard module, to show the form oVBC.CodeModule.AddFromString _

"Sub ShowMyForm()" & vbCrLf & _ " MyForm.Show" & vbCrLf & _ "End Sub" & vbCrLf

'Close the code pane the Excel opened when you added code to the



'Delete the exported file Kill "c:\temp.frm"

'Run the new routine to show the imported UserForm Application.Run oNewBk.Name & "!ShowMyForm" End Sub

Was this article helpful?

+8 -6
The Accidental Blogging Millionaires

The Accidental Blogging Millionaires

Get Inspired By The Most Popular Bloggers Online! If You Want To Skyrocket Your Success With Business And Improve Your Overall Life You Need To Have A Look At The Accidental Blogging Millionaires! Business can be a fight, particularly when you’re trying to establish one online and like all fights, to succeed you must find the winning techniques and apply them.

Get My Free Ebook

Post a comment