The simple answer to this is COM. Office apps expose most of their funtionality through COM interfaces, so it's pretty easy to automate them from almost any language you choose. VBA is just a cut-down version of the VB IDE that you can embed in your applications. There are several features missing (like EXE generation) but the most important difference is that project persistence is done by the host (so, for example, Word macros are actually stored in the word document and not in separate files). I believe that if you have both Office and VB installed on your machine then most of the DLLs used for the things common to both VBA and VB are the same (eg: editing, UI shell, debugging, form designers, etc...)
In the same vein, VS.NET uses VSA (Visual Studio for Applications) as its macro environment, and these also share a lot of code. Unfortunately it seems that VSA is currently limited to the VB.NET language, I couldn't get it to accept C# classes, although it my be possible to 'enable' c# in VSA just by tweaking the registry... Piers. > -----Original Message----- > From: Miguel de Icaza [mailto:[EMAIL PROTECTED]] > Sent: Tuesday, September 17, 2002 8:18 AM > To: [EMAIL PROTECTED] > Subject: [Mono-list] Am confused. > > > Hello guys, > > I am confused about the Basic programming language > offerings from Microsoft. So I understand there is VB.NET, > and I understand that there was an older version of VB called > VB6. Now, what is the deal with VBA? > > For instance, what is the relationship between Access and > Excel and all these VB languages? > > Miguel > > _______________________________________________ > Mono-list maillist - [EMAIL PROTECTED] > http://lists.ximian.com/mailman/listinfo/mono-> list > _______________________________________________ Mono-list maillist - [EMAIL PROTECTED] http://lists.ximian.com/mailman/listinfo/mono-list
