Visual Basic for Applications Overview

  1. What is Visual Basic for Applications?
  2. Benefits of Visual Basic for Applications Licensing
    1. Benefits to ISVs
    2. Benefits to Developers
    3. Benefits to MIS Managers
    4. Benefits to End Users of Application-Based Solutions
  3. Visual Basic for Applications Version 6.3
  4. How Does VBA Fit with Other Microsoft Tools?

What Is Visual Basic for Applications?

Microsoft Visual Basic for Applications (VBA) is a powerful development technology for rapidly customizing rich-client desktop packaged applications and integrating them with existing data and systems. VBA offers a sophisticated set of programming tools based on the Microsoft Visual Basic development system, the world's most popular rapid application development system, which developers can use to harness the power of packaged applications. VBA enables customers to buy off-the-shelf software and customize it to meet their specific business processes, rather than build solutions from scratch. This helps them save time and money, reduce risks, leverage their programming skills, and deliver precisely what users need.

Visual Basic for Applications provides a complete integrated development environment (IDE) that features the same elements familiar to developers using Microsoft Visual Basic, including a Project Window, a Properties Window, and debugging tools. VBA also includes support for Microsoft Forms, for creating custom dialog boxes, and ActiveX Controls, for rapidly building user interfaces. Integrated directly into a host application, VBA offers the advantages of fast, in-process performance (up to 200 times faster than other stand-alone development tools), tight integration with the host application (code behind documents, cells, and so forth), and the ability to build solutions without the use of additional tools.

Software programs that include VBA are called customizable applications—applications that can be tailored to fit specific business needs. This class of applications enables developers to quickly build solutions that require less end-user training. For MIS and business managers, customization means that solutions can be developed quickly and deployed easily, with minimal maintenance. In an industry familiar with two-year backlogs for new applications and high end-user training costs, these solutions provide a tremendous business benefit in terms of return on investment (ROI) and timeliness.


Benefits of Visual Basic for Applications Licensing

The increasing number of VBA-enabled applications provides opportunities for greater application customization and integration by developers, allowing them to leverage their investments in training in and knowledge of Visual Basic. Ultimately, these developer benefits extend to the organizations and users who select VBA-enabled applications over "build from scratch" solutions. Additional benefits are outlined here:

Benefits to ISVs

  • Integrated, award-winning technology.

    Licensing Visual Basic for Applications (VBA) enables ISVs to concentrate on their core competency, rather than on language development. It enables them to offer customers an award-winning development environment, and means that ISVs don't have to build proprietary technologies with differing tools and languages.

  • Competitive advantage.

    Visual Basic for Applications delivers a competitive advantage for ISVs seeking to provide full customization and integration capabilities to customers. With VBA-enabled products, ISVs can build broad capabilities into their core product while providing a technology for customers to tailor the application and add features and functionality specific to their requirements.

  • Simplified and extended applications.

    VBA provides ISVs with a way to build VBA-based wizards directly into their products to walk users through simple or complex operations. After products ship, VBA enables ISVs to provide Web-based updates to the core application, delivering new features and functionality between product cycles.

  • Macro Recording.

    With VBA and Macro Recording, ISVs can provide a simple way for end users to automate repetitive tasks while providing developers with an easy way of learning the application programming model.

  • An enormous developer community.

    By licensing Visual Basic for Applications, ISVs can take advantage of the 3.2 million developers already familiar with the Visual Basic programming technology who can use an ISV's packaged applications as development platforms. ISVs can also take advantage of the large infrastructure already in place for Visual Basic:

    • Training facilities
    • Support centers
    • Books and magazines
    • Seminars
    • Events
    • Trade shows
    • Thousands of ActiveX Controls
    • Web sites

ISVs investing in VBA can extend their applications and deliver the tools for meeting customers' specific demands. VBA-enabled products impact the bottom line by providing a built-in customization technology, enabling customers to pursue a "buy and customize" alternative to building applications from scratch.

 

Benefits to Developers

  • Each VBA-hosted application exposes its functionality through an object model, expanding the ActiveX-based component set available for developers to use as building blocks for custom solutions.
  • Developers can become more marketable because they can use their skill set across many applications.
  • The ability to reuse code is an immediate advantage because the same Visual Basic is used everywhere.
  • Visual Basic for Applications enables customization of applications to provide solutions tailored to customers' needs.
  • With the increasing availability of VBA-enabled applications, developers can now integrate these applications to share data and information more easily and seamlessly.
  • Perhaps most dramatically, Visual Basic for Applications enables developers to build solutions that previously were cost-prohibitive, because functionality is now available through the integration of different applications or from different vendors.

With VBA available across a broad range of applications, developers can customize and integrate line-of-business applications while leveraging their existing skill set.

  


Benefits to MIS Managers

  • Developer knowledge can be used across a broad range of applications.
  • MIS managers can choose to buy instead of build, while enabling application customization to meet specific business requirements.
  • MIS managers can adapt to changing resource requirements by taking advantage of the huge number of developers skilled in Visual Basic (over 3.2 million worldwide).
  • The backlog of end-user application demands can be reduced through code reuse, resulting in a faster response.
  • Developers can be moved across development projects easily.

Visual Basic for Applications can also play a large role in helping MIS managers and their companies lower training costs by reducing the number of development environments or languages in which their developers need to be trained.

  


Benefits to End Users of Application-Based Solutions

  • Solutions perform faster, thanks to tight integration between VBA and host applications.
  • Solutions look and work like the applications users already know, so less training is required.
  • Solutions can be user-customized, with respect to print options or query creation, for example.
  • There is greater participation in the solution design process—users can create the output, reports, and documents that they want automatically generated.

Overall, users will benefit the most from improved solution quality and customized functionality, as the applications they use today incorporate richer functionality and integration, and are tailored to meet their needs.   


Visual Basic for Applications Version 6.3

With the release of VBA 6.3 in March 2001, Microsoft has built on the power of VBA 6.0, and has included new features that extend the power, flexibility, and security of the development environment. This has opened the door for new ISVs to develop even more powerful solutions using new features, such as multithreaded VBA-based projects, developer productivity add-ins, and support for digital signatures. And with new integration technologies built by Microsoft, ISVs can integrate VBA into their applications more quickly and easily than ever.

Visual Basic for Applications 6.3 is a core component of Microsoft Office XP (it's now in the Microsoft Outlook messaging and collaboration client and the FrontPage Web site creation and management tool, as well as Microsoft Access, Microsoft Excel, Microsoft Word, and the Microsoft PowerPoint presentation graphics program). Through the VBA licensing program, Microsoft is making the same version of Visual Basic for Applications in Microsoft Office broadly available for use in non-Microsoft applications, providing the same ease of use and power of Visual Basic to a broad range of new applications.


How Does Visual Basic for Applications Fit with Other Microsoft Tools?

Microsoft offers a number of development tools aimed at specific developer skills and needs. These include the Microsoft Visual C#, Microsoft Visual C++, Microsoft Visual J++, and Microsoft Visual FoxPro development systems; Microsoft Office Developer; and the Visual Basic family: Visual Basic .NET, Visual Basic for Applications, and Visual Basic Scripting Edition (VBScript). Tools such as Visual C#, Visual C++, Visual J++, Visual FoxPro, and the Visual Basic programming system support developers who build their solutions from scratch to meet highly specific market needs. Microsoft Office Developer and Visual Basic for Applications support those developers who choose to buy and customize packaged applications rather than build from scratch. Buying and customizing off-the-shelf software reduces the cost and time of solution development when compared with building from scratch. The Visual Basic family is designed to offer powerful programming capabilities based on an easy-to-learn and easy-to-use programming language.

Each member of the Visual Basic family also has specific uses. VBScript is designed to offer lightweight scripting capabilities for low-memory environments, such as Web browsers, and is most commonly used in creating HTML Web pages. Visual Basic is the world's most popular rapid-application development tool for creating stand-alone software components, including executable programs, ActiveX Controls, and COM components. Finally, Visual Basic for Applications takes the same power available through the Visual Basic programming system and applies it to highly functional applications, enabling infinite levels of automation, customization, and integration.