Can VBA Code Be Run Outside of MS Applications?

26,582

Solution 1

VBA is compiled to p-code. P-code is an intermediate language that requires an additional runtime in order to execute. This runtime is hosted by most Microsoft Office applications (including various non-Microsoft applications).

In short, you cannot write a VBA only app that is compiled to an .EXE.

Solution 2

To create a stand-alone VBA-like program, you would need to use Visual Basic 6 or earlier. The successor of Visual Basic 6, of course, is VB.NET, which is a very different animal.

Solution 3

VBA can be licensed, and there are quite a few pproducts outside office that use VBA. MS no longer issues new licenses. There are non-MS VBA implementations, like from Summit software. In any case you need to have your own product that would host VBA.

Solution 4

A notable application supporting VBA is AutoDesk AutoCAD. It licenses the VBA runtime and has its own object model.

Share:
26,582
Roman
Author by

Roman

Updated on July 12, 2022

Comments

  • Roman
    Roman almost 2 years

    I just started to learn VBA. As far as I understood, one uses VBA to write macros in MS-Excel. But I wonder if it the only area of application for VBA. Can it be also used like many other standard languages - like Python, for example.

    If it is the case, how can I compile a VBA program? Should it be compiled? How can I run such a VBA program?

  • Qbik
    Qbik over 9 years
    Do you know where those VBA p-code is stored during execution ? Could we access it ?