Serving the Quantitative Finance Community

 
User avatar
Cuchulainn
Topic Author
Posts: 23029
Joined: July 16th, 2004, 7:38 am

Visual Studio Tools for Applications: he new VBA.NET?

September 20th, 2005, 9:21 am

 
User avatar
DominicConnor
Posts: 41
Joined: July 14th, 2002, 3:00 am

Visual Studio Tools for Applications: he new VBA.NET?

September 20th, 2005, 10:20 am

No.I accept that it is better in many ways that will gladden the hearts of IT departments.However, people do not choose VBA in Excel because of it's elegance They choose it because it's trivial to get started, integrates relatively well and has adequate performance for most jobs.Also it allows you to deliver a single file solution. Developers in the more spohisticated environments pay a price that installation can be really quite non trivial, and involve complex dependancies between DLLs, EXEs OCXes et al.VBA & Excel were designed from the point of view of a programmer/user who needed to get things done..NET was designed to push MS commercial objectives, influenced by people who thought Delphi was a really cool tool.
 
User avatar
Cuchulainn
Topic Author
Posts: 23029
Joined: July 16th, 2004, 7:38 am

Visual Studio Tools for Applications: he new VBA.NET?

September 20th, 2005, 11:27 am

QuoteOriginally posted by: DCFCNo.I accept that it is better in many ways that will gladden the hearts of IT departments.However, people do not choose VBA in Excel because of it's elegance They choose it because it's trivial to get started, integrates relatively well and has adequate performance for most jobs.Also it allows you to deliver a single file solution. Developers in the more spohisticated environments pay a price that installation can be really quite non trivial, and involve complex dependancies between DLLs, EXEs OCXes et al.VBA & Excel were designed from the point of view of a programmer/user who needed to get things done..NET was designed to push MS commercial objectives, influenced by people who thought Delphi was a really cool tool.If these tools are as easy to use for users then it would be just as good as VBA. I suspect C# syntax knowledge is useful to have.
Last edited by Cuchulainn on September 19th, 2005, 10:00 pm, edited 1 time in total.
 
User avatar
esty
Posts: 0
Joined: May 20th, 2004, 7:07 pm

Visual Studio Tools for Applications: he new VBA.NET?

September 23rd, 2005, 2:00 pm

These tools will not be as easy to use as VBA. I don't think VSTO is even targetted to replace VBA. BTW, the reports that have been all over the web about VBA not being supported in Excel 12's new XML file formats are bogus. In reality, they are going to have (at least) two new formats, identical but for the fact that one allows code, one does not. They'll be easily differentiable by file extension, so email servers, etc., can filter based on that, and the file doesn't need to be opened for 3rd party tools to tell if the file contains code. My read is that VSTO is really targeted at VARs, consultants, and IT departments who want to build more robust, rich apps on top of office. For users 'in the trenches', VBA will still be the choice for all the reasons VBA is the choice now. Also, the Office 12 team seams pretty dedicated to maintaining a 'single file experience' for everyday users (VSTO will not maintain this, libraries will have to be distributed). The Excel 12 file format is a zip file. In the zip file are a number of XML chunks, some of which represent the spreadsheet, others contain code or other resources (images, movies, etc.).I disagree that .NET was strictly designed to push MS commercial objectives, without regard for technical or market value. W/r/t C#, it's a good tool-- it's like someone said, "Java was almost really good. Lets go through and fix the problems and release a new thing with better support for client-side applications."The installation problem alone I think will prevent VSTO from displacing .NET in most (finance) applications.
 
User avatar
spursfan
Posts: 2
Joined: October 7th, 2001, 3:43 pm

Visual Studio Tools for Applications: he new VBA.NET?

September 25th, 2005, 3:16 pm

danieli think you've picked an old site in VS tools for applications - this is now VS tools for office, as esty saidVSTO is the ability from a VS front-end to create Excel-like spreadsheets (equivalent to the macro language in VBA) - so this is using a more complicated environment to automate things that can easily built in Excel alone (so no real benefit there)but in Excel 12 the default file formats will exclude the VBA code for macros and user-defined functions and such files with code will have to be saved with a different extension - so VBA will continue to be supported, just outside the default file formatsVSTO does nothing to address VBA functions - instead, what i'd like to see in Excel is the ability to call functions that are written in VB.NET or C# (in a similar fashion to automation add-ins that accept VB functions)the good news is that VBA macros and functions will continue to be supported - the bad news is that code will be outside the new default file formats (though maybe this isn't such a big deal in the new multi-component XML-based zip file world) - and the even worse news is that Microsoft is devoting all its VBA-replacement resources towards macros via VSTO and little, as yet, towards VBA functions and calling .NET language functions from Excelps alos just heard that Excel 12 will have room for over 1,000,000 rows and 16,384 columns - it will be terrifying how slowly it could then re-calculate and run - since columns will go up to wxx or something, named ranges such as stu1 from earlier versions will probably cause problems!
 
User avatar
SierpinskyJanitor
Posts: 1
Joined: March 29th, 2005, 12:55 pm

Visual Studio Tools for Applications: he new VBA.NET?

September 25th, 2005, 7:33 pm

VSTO is just an office .NET stub. However, the simplicity behind this assertion must not be interpreted lightly. Every Windows user knows Office. Programmers familiar with the underpinnings of the CLR, couldn't be happier with this cocktai, which, in my humble opinion, is one of the coolest MS technologies ever deployed. I have fortunately worked extensively with both versions of VSTO and fully recommend it. If you browse through the Microsoft's Enterprise Systems and Patterns you'll find some cool examples of this. Within Quant-Fin there are some USA companies targetting this as well, check the Cornell Theory Center in NY.Cheers, Serp.
 
User avatar
robert2098
Posts: 0
Joined: July 21st, 2004, 6:44 am

Visual Studio Tools for Applications: he new VBA.NET?

September 26th, 2005, 1:12 pm

There seems some confusion here.Visual Studio Tools for Office (VSTO) is not the same as Visual Studio Tools for Applications (VSTA)!VSTO is an extension to Visual Studio 2003/2005 to automate Office. Here a .dll created in .NET is referenced and executed by an office document. The .NET .dll uses the Office Automation model to interact with Office. The 2005 version also adds "pseudo" Office objects (Objects that seem to be derived from the standard Office automation object), that makes certain tasks a lot easier. It also makes possible to add .NET GUI controls to be placed in Word/Excel documents. This works with Office 2003. More info about VSTO can be found here.VSTA however is from what I understand a complete replacement for VBA. Included with the future Office 12 it will include a developer IDE right out of the box. So no Visual Studio needed!More information about VSTA can be found here.Unfortunately I couldn't find any more details about this.Robert
Last edited by robert2098 on September 25th, 2005, 10:00 pm, edited 1 time in total.
 
User avatar
spursfan
Posts: 2
Joined: October 7th, 2001, 3:43 pm

Visual Studio Tools for Applications: he new VBA.NET?

September 26th, 2005, 4:22 pm

thanks for correcting my misunderstandingbut the MS blurb says that VSTA is a simpler version of Visual Studio 2005i'm also waiting to see what the entry-level express editions of Visual Studio 2005 (one each for VB.NET and C#) look like - there are a couple of Wrox books slated with CDs that, in theory, can be used to create class libraries for modest $