Visual Basic for Applications programs which are written to use the OLE Automation interface of one application cannot be used to automate a different application, even if that application hosts the Visual Basic runtime, because the OLE Automation interfaces will be different.
For example, a VBA program written to automate Microsoft Word cannot be used with a different word processor, even if that word processor hosts VBA.
Using VBA, most of the security features lie in the hands of the user, not the author.
The VBA host application options are accessible to the user.
VBA is built into most Microsoft Office applications, including Office for Mac OS X (except version 2008), and other Microsoft applications, including Microsoft Map Point and Microsoft Visio.
VBA is also implemented, at least partially, in applications published by companies other than Microsoft, including Arc GIS, Auto CAD, Corel Draw, Libre Office, Reflection, to Microsoft P-Code (packed code), a proprietary intermediate language, which the host applications (Access, Excel, Word, Outlook, and Power Point) store as a separate stream in COM Structured Storage files (e.g., by a virtual machine (hosted by the host application).
Commands to the different applications must be done explicitly through these application objects in order to work correctly.
The language provides a user interface in the form of User Forms, which can host Active X controls for added functionality.
As with any common programming language, VBA macros can be created with malicious intent.
Microsoft suggests contacting the software vendor for 64-bit versions of VBA controls.
Normally, many Excel users tend to insert timestamp with the formula =NOW().