O'Reilly logo

Excel® 2010 Power Programming with VBA by John Walkenbach

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Chapter 28: Manipulating Visual Basic Components

IN THIS CHAPTER

Getting an overview of the VBA Integrated Development Environment (IDE) and its object model

Using VBA to add and remove modules from a project

Writing VBA code that creates more VBA code

Using VBA to help create UserForms

Creating a UserForm on the fly

Introducing the IDE

This chapter covers a topic that some readers might find extremely useful: writing Visual Basic for Applications (VBA) code that manipulates components in a VBA project. The VBA IDE contains an object model that exposes key elements of your VBA projects, including the Visual Basic Editor (VBE) itself. This object model enables you to write VBA code that adds or removes modules, generates other VBA code, or even creates UserForms on the fly.

The IDE is essentially an Object Linking and Embedding (OLE) automation interface for the Visual Basic Editor. After you establish a reference to the object, you have access to all the VBE's objects, properties, and methods, and you can also declare objects from the IDE's member classes.

Use the VBE's ToolsReferences command to display the References dialog box, where you can add a reference to the Microsoft Visual Basic for Applications Extensibility Library (see Figure 28-1). This gives you access to an object called VBIDE. Creating a reference to VBIDE enables you to declare object variables contained in the VBIDE and also gives you access to a number of predefined constants that relate to the ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required