VBA Glossary

Absolute Reference(Excel)
Absolute Reference is used when recording macros where references relate to a particular cell or group of cells that we do not want to change. This is the default setting when recording macros.

Access Level
In VB code, the ability of other code to access it (that is, read it or write to it). The access level is determined both by how you declare the code and by the access level of the container of the code. If code can't access a containing element, then it can't access any of its contained elements either, no matter how they're declared.

Access Protocol
The software and API that allows applications and databases to communicate information. Examples include ODBC - Open DataBase Connectivity, an early protocol that is often used in conjuction with others and ADO - ActiveX Data Objects, Microsoft's protocol for accessing all kinds of information, including databases.

accelerator key
A single character used as a shortcut for selecting an object. Pressing the ALT key, followed by the accelerator key gives focus to the object and initiates one or more events associated with the object. The specific event or events initiated varies from one object to another. If code is associated with an event, it is processed when the event is initiated. Also called keyboard accelerator, shortcut key, keyboard shortcut.

ActiveX
is Microsoft's specification for reusable software components. ActiveX is based on COM, the Component Object Model. The basic idea is to define exactly how software components interact and interoperate so developers can create components that work together using the definition. ActiveX components were originally called OLE Servers and ActiveX Servers and this renaming (actually for marketing rather than technical reasons) has created a lot of confusion about what they are.

API
is a TLA (Three Letter Acronym) for Application Program Interface. An API consists of the routines, protocols and tools that programmers must use to ensure that their programs are compatible with the software that the API is defined for. A well-defined API helps applications work together by providing the same basic tools for all programmers to use. A wide variety of software from operating systems to individual components are said to have an API.

Automation Controller
Automation is a standard way to make a software object available through a defined set of interfaces. This is a great idea because the object is available to any language that follows the standard methods. The standard used in Microsoft (and therefore VB) architecture is called OLE automation. An automation controller is an application that can use the objects belonging to another application. An automation server (sometimes called an automation component) is an application that provides the programmable objects to the other applications.

background color
The color of the client region of an empty window or display screen, on which all drawing and color display takes place.

Break Point
This is used when debugging your code. You can put in a temporary "break point" by clicking on the left margin of your code editor or put in a permanent one by typing "STOP" on a line of your code. The practical use of this is to examine variables or behavior of your application in detail within a specific function or subroutine, you want the code to run at full speed until it reaches this point and then it stops.

Boolean
A variable data type that uses 2 bytes of memory and can only have two possible values – true or false. It is named after George Boole.

bound
Describes a control whose contents are associated with a particular data source, such as a cell or cell range in a worksheet.

Branching
The name given to code that ensures that certain sections of code are only executed under certain circumstances.

Cache
A cache is a temporary information store used in both hardware (a processor chip typically includes a hardware memory cache) and software. In web programming, a cache stores the most recent web pages visited. When the 'Back' button (or other methods) are used to revisit a web page, the browser will check the cache to see if the page is stored there and will retrieve it from the cache to save time and processing. Programmers should remember that program clients might not always retrieve a page directly from the server. This sometimes results in very subtle program bugs.

Call
We can use “Call” to run one sub procedure from another.

CGI
is Common Gateway Interface. This is an early standard used to transfer information between a web server and a client over a network. For example, a form in a "shopping cart" application might contain information about a request to purchase a particular item. The information could be passed to a web server using CGI. CGI is still used a great deal, ASP is a complete alternative that works better with Visual Basic.

Class
Here's the "book" definition: The formal definition for an object and the template from which an instance of an object is created. The main purpose of the class is to define the properties and methods for the class. Although included in previous versions of Visual Basic, the class has become a key technology in VB.NET and its object-oriented programming. Among the important ideas about classes are: Classes involve a lot of terminology. An original class, from which interface and behavior is derived, can be identified by any of these equivalent names: And new classes can have these names:
 * A class can have subclasses that can inherit all or some of the characteristics of the class.
 * Subclasses can also define their own methods and variables that are not part of their parent class.
 * The structure of a class and its subclasses is called the class hierarchy.
 * Parent class
 * Superclass
 * Base class
 * Child class
 * Subclass

clear
To change a setting to "off" or remove a value.

client region
The portion of a window where an application displays output such as text or graphics.

Client/Server
A computing model that divides processing between two (or more) processes. A client makes requests that are carried out by the server. It's important to understand that the processes could be running on the same computer but they normally run over a network. For example, when developing ASP applications, programmers often use PWS, a server that runs on the same computer with a browser client such as IE. When the same application goes into production, it normally runs over the Internet. In advanced business applications, multiple layers of clients and servers are used. This model now dominates computing and replaced the model of mainframes and 'dumb terminals' which were really only display monitors attached directly to a large mainframe computer. In object-oriented programming, a class that provides a method to another class is called the server. The class that uses the method is called the client.

Code Window
The VBE Code Window is where we write, display. or edit code. Quickly access the Code Window by selecting F7.

COM
is Component Object Model. Although often associated with Microsoft, COM is an open standard that specifies how components work together and interoperate. Microsoft used COM as the basis for ActiveX and OLE. The use of the COM API ensures that a software object can be launched within your application using a wide variety of programming languages including Visual Basic. Components save a programmer from having to re-write code. A component can be large or small and can perform any kind of processing, but it must be re-usable and it must conform to set standards to for interoperability.

context ID
A unique number or string that corresponds to a specific object in an application. Context IDs are used to create links between the application and corresponding Help topics.

Control
In Visual Basic, the tool you use to create objects on a Visual Basic form. Controls are selected from the Toolbox and then used to draw objects on the form with the mouse pointer. It's key to realize that the control is just the tool used to create GUI objects, not the object itself.

control group
A set of controls that are conceptually or logically related. Controls that are conceptually related are usually viewed together but do not necessarily affect each other. Controls that are logically related affect each other. For example, setting one button in a group of option buttons sets the value of all other buttons in the group to False.

control tip
A brief phrase that describes a control, a Page, or a Tab. The control tip appears when the user briefly holds the mouse pointer over a control without clicking. A control tip is similar to a ToolTip. Microsoft Forms provides ToolTips to developers at design time, while developers provide control tips to end-users at run time.

cursor
A piece of software that returns rows of data to the application. A cursor on a result set indicates the current position in the result set.

cycle
To move through a group of objects in a defined order.

data format
The structure or appearance of a unit of data, such as a file, a database record, a cell in a spreadsheet, or text in a word-processing document.

Data Hiding
Data hiding is part of the process of removing complexity from programs. Any program in a business environment that does anything useful, can easily have 500 lines to 20 thousand lines of code. This means things can get complex real fast. Without using sound engineering principles most programs would become unmanageable. Data hiding is the term used for one of the good habits that ensure that it is easier for a human being, to change and amend and support, and most importantly understand complex programming code. Data hiding is “management by exception” for programmers,it allows us to only focus on and find, the area of the code that we wish to review. This is not some esoteric principle that is only useful to engineers. Business programmers, macro writers and all programmers can benefit from it. For example an accounting consolidation macro will be more useful flexible and get more done if the macro writer employs this technique. If you don’t employ this technique your macros and programs will be unstable, your code will also be very hard to maintain, and most likely when you leave your department or organisation your program will cease to be used because it will be too difficult to maintain. Not great for the cv don’t you think? If you do use this technique you will justifiably feel proud because you have written some awesome applications which deliver business value and will continue to be used in the business for a very long time giving you Kudos.

data source
The location of data to which a control is bound, for example, a cell in a worksheet. The current value of the data source can be stored in the Value property of a control. However, the control does not store the data; it only displays the information that is stored in the data source.

Data Type
This is the “type of” variable, String (text), Double, Integer, Long, Single (Number), worksheet, range ,form

Dim
We declare variables using the “Dim” statement. For example, “Dim InterestRate” declares “InterestRate” as a variable storage location.

DLL
is Dynamic Link Library, a set of functions that can be executed, or data that can be used by a Windows application. DLL is also the file type for DLL files. For example, 'crypt32.dll' is the Crypto API32 DLL used for cryptography on Microsoft operating systems. There are hundreds and possibly thousands installed on your computer. Some DLLs are used only by a specific application, while others, such as crypt32.dll, are used by a wide variety of applications. The name refers to the fact that DLL's contain a library of functions that can be accessed (linked) on demand (dynamically) by other software.

Do…Until
A commonly used form of looping code that allows a section of code to run more than once. “Do Until” loops continue until the condition is true.

Do…While
A commonly used form of looping code that allows a section of code to run more than once. “Do While” loops continue while a condition remains true.

dominant control
A reference for the Align command and Make Same Size command on the Format menu. When aligning controls, the selected controls align to the dominant control. When sizing controls, the selected controls are assigned the dimensions of the dominant control. The dominant control is indicated by white sizing handles. The sizing handles of the other selected controls are black.

drop source
The selected text or object that is dragged in a drag-and-drop operation.

Encapsulation
is the Object Oriented Programming technique that allows programmers to completely determine the relationship between objects using the object interface (the way the objects are called and the parameters passed). In other words, an object can be thought of as being "in a capsule" with the interface as the only way to communicate with the object. The main benefits of encapsulation are that you avoid bugs because you're completely certain about how an object is being used in your program and the object can be replaced with a different one if necessary as long as the new one implements the exact same interface.

enumerated constant
You can find additional information for an enumerated data item in the description of the property, method, or event that uses the enumeration.

Event Procedure
A block of code that is called when an object is manipulated in a Visual Basic program. The manipulation can be done by a user of the program through the GUI, by the program, or through some other process such as the expiration of a time interval. For example, most Form object have a Click event. The Click Event Procedure for the formForm1 would be identified by the name Form1_Click.

File Extension / File Type
In Windows, DOS and some other operating systems, one or several letters at the end of a filename. Filename extensions follow a period (dot) and indicate the type of file. For example, 'this.txt' is a plain text file, 'that.htm' or 'that.html' indicates that the file is a web page. The Windows operating system stores this association information in the Windows Registry and it can be changed using the 'File Types' dialog window provided by Windows Explorer.

For…Next
This is a commonly used form of looping code that allows a section of code to run more than once.

foreground color
The color that is currently selected for drawing or displaying text on screen. In monochrome displays, the foreground color is the color of a bitmap or other graphic.

Form Controls
Form Controls include buttons that can be used to let users know that macros are available and make code more accessible.

Frames
A format for web documents that divides the screen into areas that can be formatted and controlled independently. Often, one frame is used to select a category while another frame shows the contents of that category.

Function
In Visual Basic, a type of subroutine that can accept an argument and returns a value assigned to the function as though it was a variable. You can code your own functions or use builtin functions provided by Visual Basic. For example, in this example, both Nowand MsgBox are functions. Now returns the system time.

grid block
The space between two adjacent grid points.

Host
A Computer or a process on a computer that provides a service to another computer or process. For example, VBScript can be 'hosted' by the web browser program, Internet Explorer.

If…Then
This is a commonly used form of branching code which allows certain sections of code to be executed only under certain circumstances.

InputBox
An input box is used to prompt for specific user input during the execution of a sub procedure. The user input from the input box function is then assigned to a variable.

Input Method Editor (IME)
An application that translates what you type into characters of a DBCS language, such as Japanese or Chinese. As the user types, the IME displays possible equivalents. The user selects the most appropriate entry.

inherited property
A property that has acquired the characteristics of another class. Inheritance is the ability of one object to automatically take on the methods and properties of another object. The object that supplies the methods and properties is usually called the parent object and the object that assumes them is called the child. So, for example, in VB .NET, you will often see statements like this: The parent object is System.Windows.Forms.Form and it has a large set of methods and properties that have been pre-programmed by Microsoft. Form1 is the child object and it gets to take advantage of all of the parent's programming. The key OOP (Object Oriented Programming) behavior that was added when VB .NET was introduced is Inheritance. VB 6 supported Encapsulation and Polymorphism, but not Inheritance.

Instance
is a word seen in Object Oriented Programming explanations. It refers to a copy of an object that has been created for use by a specific program.

ISAPI
is the Internet Server Application Program Interface. Usually, any term that ends in the characters 'API' is an Application Program Interface. This is the API used by Microsoft's Internet Information Server (IIS) web server. Web applications that use ISAPI run considerably faster than those that use CGI, since they share the 'process' (programming memory space) used by the IIS web server and therefore avoid the time consuming program load and unload process that CGI requires. A similar API used by Netscape is called NSAPI.

keyboard state
A return value that identifies which keys are pressed and whether the keyboard modifiers SHIFT, CTRL, and ALT are pressed.

Keyword
Keywords are the words or symbols that are the elementary parts of the Visual Basic programming language. As a result, you can't use them as names in your program. Some simple examples: Dim Dim as String or Dim String as String Both of these are invalid because Dim and String are both keywords and can't be used as variable names.

Locals Window
This is the name given to code that allows for a section of code to run more than once.

Looping
The VBE Locals Window allows us to display all the declared variables in the current procedure and their values.

Method
A way to identify a software function that performs an action or a service for a particular object. For example, the Hide method for form Form1 removes the form from the program display but doesn't unload it from memory. It would be coded: Form1.Hide

Module
A Module is a general term for a file containing code or information that you add to your project. Usually, a module contains program code which you write. In VB 6, modules have a .bas extension and there are just three kinds of modules: form, standard, and class. In VB.NET, modules usually have a .vb extension but others are possible, such as .xsd for a dataset module, .xml for an XML module, .htm for a web page, .txt for a text file, .xslt for an XSLT file, .css for a Style Sheet, .rptfor a Crystal Report, and others. To add a module, right click the project in VB 6 or the application in VB.NET and select Add and then Module.

MsgBox
This VBA function displays a pop-up message box. Message boxes are typically used to provide information and guidance.

Namespace
The concept of a namespace has been around for quite a while in programming but has only become a requirement for Visual Basic programmers to know about since XML and .NET became critical technologies. The traditional definition of a namespace is a name that uniquely identifies a set of objects so there is no ambiguity when objects from different sources are used together. The type of example that you usually see is something like the Dog namespace and the Furniturenamespace both have Leg objects so you can refer to a Dog.Leg or a Furniture.Leg and be very clear about which one you mean.

In practical .NET programming, however, a namespace is just the name that is used to refer to Microsoft's libraries of objects. For example, both System.Data and System.XML are typicalReferences in default VB .NET Windows Aplications and the collection of objects they contain are referred to as the System.Data namespace and the System.XML namespace.

The reason "made-up" examples like "Dog" and "Furniture" are used in other definitions is that the "ambiguity" problem really only comes up when you define your own namespace, not when you're using Microsoft's object libraries. For example, try to find object names that are duplicated betweenSystem.Data and System.XML.

When you're using XML, a namespace is a collection of element type and attribute names. These element types and attribute names are uniquely identified by the name of the XML namespace of which they are a part. In XML, a namespace is given the name of a Uniform Resource Identifier (URI) - such as a Web site's address - both because the namespace could be associated with the site and because a URI is a unique name. When it's used this way, the URI is not required to be used other than as a name and there doesn't have to be a document or XML schema at that address.

Newsgroup
A discussion group operated through the Internet. Newsgroups (also known as Usenet) are accessed and viewed on the web. Outlook Express (distributed by Microsoft as part of IE) supports newsgroup viewing. Newsgroups tend to be popular, fun, and alternative. See Usenet.

Object
Microsoft defines it as a software component that exposes its properties and methods Halvorson (VB.NET Step by Step, Microsoft Press) defines it as ... the name of a user interface element you create on a VB form with a Toolbox control Liberty (Learning VB.NET, O'Reilly) defines it as ... an individual instance of a thing Clark (An Introduction to Object-Oriented Programming with Visual Basic .NET, APress) defines it as ... a structure for incorporating data and procedures for working with that data There's quite a broad spectrum of opinion on this definition. Here's one that is probably right in the mainstream: Software that has properties and/or methods. A Document, Branch or Relationship can be an individual object, for example. Most, but not all, objects are members of a collection of some kind.

Object Browser
The Object Browser enables us to see a list of all the different objects with their methods and properties. The browser can be accessed by hitting F2 or by selecting it from the “View” pull down menu.

Object Library
A file with the .olb extension that provides information to Automation controllers (like Visual Basic) about available objects. The Visual Basic Object Browser (View menu or function key F2) will let you browse all of the object libraries available to you.

OCX
The file extension (and generic name) for OLE Custom control (the X must have been added because it looked cool to Microsoft Marketing types). OCX modules are independent program modules that can be accessed by other programs in a Windows environment. OCX controls replaced VBX controls written in Visual Basic. OCX, both as a marketing term and a technology, was replaced by ActiveX controls. ActiveX is backward compatible with OCX controls because ActiveX containers, such as Microsoft's Internet Explorer, can execute OCX components. OCX controls can be either 16-bit or 32-bit.

OLE
OLE stands for Object Linking and Embedding. This is a technology that first came on the scene along with the first really successful version of Windows: Windows 3.1. (Which was released in April 1992. Yes, Virginia, they had computers that long ago.) The first trick that OLE made possible was the creation of what is called a "compound document" or a document that has content created by more than one application. For example, a Word document containing a genuine Excel spreadsheet (not a picture, but the actual thing). The data can be provided by either "linking" or "embedding" which accounts for the name. OLE has gradually been extended to servers and networks and has gained more and more capability.

OLE container control
A Visual Basic control that is used to link and embed objects from other applications in a Visual Basic application.

OLE status code
The error number portion of a data structure that returns information for error conditions. The data structure is defined by Object Linking and Embedding.

On Error Statements
On error statements bypass Excel’s built-in error handling procedures and allow us to create our own error handling procedures.

OOP - Object Oriented Programming
A programming architecture that emphasizes the use of objects as the fundamental building blocks of programs. This is accomplished by providing a way to create the building blocks so they include both data and functions that are accessed through an interface (these are called "properties" and "methods" in VB). The definition of OOP has been controversial in the past because some OOP purists vehemently insisted that languages like C++ and Java were object oriented and VB 6 was not because OOP was defined (by the purists) as incorporating the three pillars: Inheritance, Polymorphism, and Encapsulation. And VB 6 never implemented inheritance. Other authorities (Dan Appleman, for example), pointed out that VB 6 was very productive for building binary reusable code blocks and therefore it was OOP enough. This controversy will die down now because VB .NET is very emphatically OOP - and most definitely includes Inheritance.

Option Explicit
With an “Option Explicit” statement, code cannot be run that contains any undeclared variables. Excel will generate an error if it encounters a misspelled variable.

Perl
is an acronym that actually expands to 'Practical Extraction and Report Language' but this doesn't do much to help you understand what it is. Although it was created for text processing, Perl has become the most popular language for writing CGI programs and was the original language of the web. People who have a lot of experience with Perl love it and swear by it. New programmers, however, tend to swear at it instead because it has a reputation for not being easy to learn. VBScript and Javascript are replacing Perl for web programming today. Perl is also used a great deal by Unix and Linux administrators for automating their maintenance work.

placeholder
A character that masks or hides another character for security reasons. For example, when a user types a password, an asterisk is displayed on the screen to take the place of each character typed.

Procedural Programming
This can be loosely defined as a program that starts at the beginning, runs and then ends sort of like executing instructions in a list, as opposed to event driven programming and or object oriented programming. It can also be used however to define a basic set of rules you need to follow on the journey to writing good code. The name says it all PROCEDURAL programming i.e put you code in procedures (plural) as opposed to using one procedure that becomes 1000 lines long. It covers rules such as … •One function one task
 * Data Hiding
 * Declare All Variables (that you can) Locally
 * Use a naming convention – Hungarian for example
 * Pass variables between functions using arguments.

Polymorphism
is a word seen in Object Oriented Programming explanations. This is the ability to have two different objects, of two different types, that both implement the same method (polymorphism literally means "many forms"). So, for example, you might write a program for a government agency calledGetLicense. But the license could be a dog license, a driver's license or a license to run for political office ("license to steal" ??). Visual Basic determines which one is intended by differences in the parameters used to call the objects.

Process
refers to a program that is currently executing, or "running" on a computer.

Project Explorer Window
The VBE Project Explorer Window displays a list of projects and project items in Excel documents. The shortcut is CTRL+R.

Property
In Visual Basic, a named attribute of an object. For example, every Toolbox object has a Nameproperty. Properties can be set by changing them in the Properties window at design time or by program statements at run time. For example, I might change the Name property of a form Form1with the statement :

property page
A grouping of properties presented as a tabbed page of a property sheet.

Properties Window
The VBE Properties Window displays a list of properties a selected item. The shortcut is F4.

Public
In Visual Basic .NET, the keyword in the declaration statement that makes the elements accessible from code anywhere within the same project, from other projects that reference the project, and from any assembly built from the project. But see Access Level as well on this. Here's an example: Public can be used only at module, interface, or namespace level. You can't declare an element to be Public within a procedure.

Relative Reference
This is used when recording macros where all movements are recorded as relative to an active cell. This needs to be turned on, as it is not the default setting for recording macros.

RGB
A color value system used to describe colors as a mixture of red (R), green (G), and blue (B). The color is defined as a set of three integers (R,G,B) where each integer ranges from 0-255. A value of 0 indicates a total absence of a color component. A value of 255 indicates the highest intensity of a color component.

Register
Registering a DLL (Dynamic Link Library) means the system knows how to find it when an application creates an object using the DLL's ProgID. When a DLL is compiled, Visual Basic automatically registers it on that machine for you. COM depends on the Windows registry and requires all COM components to store (or 'register') information about themselves in the registry before they can be used. A unique ID is used for different components to make certain they don't clash. The ID is called a GUID, or Globally Unique IDentifier and they're calculated by compilers and other development software using a special algorithm.

Scope
The part of a program where a variable can be recognized and used in statements. For example, if a variable is declared (DIM statement) in the Declarations section of a form, then the variable can be used in any procedure in that form (such as the Click event for a button on the form).

State
The current condition and values in a running program. This is usually most significant in an online environment (such as a web system such as an ASP program) where the values contained in program variables will be lost unless they're saved somehow. Saving critical "state information" is a common task necessary in writing online systems.

String
Any expression that evaluates to a sequence of contiguous characters. In Visual Basic, a string is the variable type (VarType) 8.

Sub Procedure
This is the basic unit of VBA code. A sub procedure starts with “Sub” and ends with “End Sub”.

Subscript Out of Range Error
This error is often caused by referencing a nonexistent object.

Syntax
The word "syntax" in programming is almost the same as "grammar" in human languages. In other words, it's the rules you use to create statements. The syntax in Visual Basic must let the Visual Basic compiler 'understand' your statements to create an executable program.

system colors
Colors that are defined by the operating system for a specific type of monitor and video adapter. In Windows, each color is associated with a specific part of the user interface, such as a window title or a menu.

target
An object onto which the user drops the object being dragged.

transparent
Describes the background of the object if the background is not visible. Instead of the background, you see whatever is behind the object, for example, an image or picture used as a backdrop in your application. Use the BackStyle property to make the background transparent.

unbound
Describes a control that is not related to a worksheet cell. In contrast, a bound control is a data source for a worksheet cell that provides access to display and edit the value of a control.

URL
Uniform Resource Locator - This is the unique address of any a document on the Internet. The different parts of a URL have specific meaning.

Usenet
Usenet is a world-wide distributed discussion system. It consists of a set of 'newsgroups' with names that are classified hierarchically by subject. 'Articles' or 'messages' are posted to these newsgroups by people on computers with the appropriate software. These articles are then broadcast to other interconnected computer systems via a wide variety of networks. Visual Basic is discussed in a number of different newsgroups such as Microsoft.public.vb.general.discussion.

User Defined Functions
VBA in Excel allows us to create custom functions. To create a user-defined function, the code must start with “Function” and end with “End Function”.

UDT
While not really a Visual Basic term, a definition of this term was requested by an About Visual Basic reader so here it is! UDT is an acronym that expands to "User Datagram Transport", but that may not tell you much. UDT is one of several "network layer protocols" (another is TCP - half of the perhaps more familiar TCP/IP). These are simply agreed upon (standardized) methods to transfer bits and bytes across networks such as the Internet but also possibly from one computer to another in the same room. Since it's just a careful description of how to do it, it might be used in any application where bits and bytes have to be transferred. UDT's claim to fame is that it uses new reliability and flow/congestion control mechanisms that are based on another protocol called UDP.

Variables
Variables are named storage locations. Declaring variables makes code run faster and uses memory more efficiently. We declare variables using the “Dim” statement.

VBX
The file extension (and generic name) of components used by 16-bit versions of Visual Basic (VB1 through VB4). Now obsolete, VBXs do not have two of the properties (inheritance and polymorphism) many believe are required by true object-oriented systems. Starting with VB5, OCX and then ActiveX controls became current.

Virtual Machine
A term used to describe a platform, that is, the software and operating environment, for which you are writing code. This is a key concept in VB.NET because the virtual machine that the VB 6 programmer writes to is radically different than the one the VB.NET program uses. As a starting point (but there is much more), VB.NET's virtual machine requires the presence of the CLR (Common Language Runtime). To illustrate the concept of a virtual machine platform in actual use, VB.NET provides for alternates in the Build menu Configuration Manager.

Web Services
Software that runs over a network and provides information services based on XML standards that are accessed through a URI (Universal Resource Identifier) address and an XML defined information interface. The standard XML technologies normally used in web services include SOAP, WSDL, UDDI and XSD. See Quo Vadis, Web Services, The Google API.

Win32
The Windows API for Microsoft Windows 9X, NT, and 2000.

WorksheetFunction
To use Excel functions in VBA code, the function must be preceded by “Application.WorksheetFunction”. For example, if we want to access the average function, then we write “Application.WorksheetFunction.Average”.

XML
The Extensible Markup Language allows designers to create their own customized 'markup tags' for information. This makes it possible to define, transmit, validate, and interpret information between applications with greater flexibility and accuracy. The XML specification was developed by the W3C (the World Wide Web consortium - an association whose members are international corporations) but XML is used for applications far beyond the web. (Many definitions you can find on the web state that it's used only for the web, but this is a common misunderstanding. XHTML is a specific set of markup tags that are based on HTML 4.01 as well as XML that is exclusively for web pages.) VB.NET and all Microsoft .NET technologies use XML extensively.