VBA is an acronym that stands for Visual BASIC for Applications. VBA is an extension of Microsoft’s Visual Basic and is a high-level event-driven programming language used for creating both sophisticated applications programs as well as simple macros.
Usually VBA is included with Microsoft Office but it also comes with AutoCAD, Microsoft Visio, and other applications. VBA is a flexible language with many functional capabilities, but it also has a few limitations of a higher technical nature that only an experienced programmer will usually encounter.
To write a program in VBA, a programmer chooses various control objects such as list boxes, toolbars, pushbuttons, menus, dialogue boxes, and a user interface, then places them in a window to create a fully designed and functional program. Later these objects are “linked up” by writing routines and procedures using a BASIC-like language which makes them function.
VBA does not create standalone programs, but needs a host program in which to operate. VBA is also an interpreted language like BASIC, which means that when a programmer initiates a certain program, the instructions are interpreted on the spot and executed on-the-fly.
Customizing applications is one major use of VBA, such as when programmers add special features to existing applications (Microsoft Excel or Word, for example) that does not naturally include them.
In the future, Microsoft has stated it will promote an application called Visual Studio Tools for Applications that will completely replace VBA, but this may not be for a few years. Office 2007 is still using VBA while VSTA is being constructed.