Reply
 
LinkBack Thread Tools Search this Thread Display Modes
  #1   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 18
Default Best Excel Development Architecture? VSTO vs. VBA vs. VB.Net/C#.Netvs. ???

Hi,

First of all, I'm an experienced programmer in a few languages,
including C#, but have not yet learned VBA or VB.Net beyond
rudimentary code.

However, my new employer is a heavy user of Excel, and it would
behoove me to learn to maximize its capabilities.

I've read a number of web articles indicating that VSTO is the
successor to VBA. However, I've also read it does not work with
Visual Studio Express. Is this still the case with VS Express 2010?
If so, then Microsoft wants me to use VSTO in favour of VBA, yet wants
me to spend $$$ for the high end VS Suite? I don't understand this
marketing - I would think it would limit the uptake of VSTO? There is
no way I will get justification to buy VS just to use VSTO vs. VBA.

I've also read he
http://groups.google.com/group/micro...c3 0ee38f2b52
that VBA can be used to call a .dll.

Given the above, what would you recommend as the best architecture for
me to learn to automate Excel's capabilities?

Thanks,
Scott
  #2   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 226
Default Best Excel Development Architecture? VSTO vs. VBA vs. VB.Net/C#.Net vs. ???

I would suggest you start programming directly within Excel's VBA IDE.
This will give you more speedy results, allow you to use the macro
recorder to learn how its objects, methods, properties, and collections
work, AND you can test code on the fly more easily/readily during
development.

As far as your assertion that VSTO is M$'s replacement for VBA goes,
that's never going to happen! VBA has been upgraded for x64 and so I
expect they plan to continue with it as the default macro language for
M$O apps.

If you want some good reference material for serious application
development in the Excel platform then check these out:

http://www.appspro.com/Books/Books.htm

In any case, you'll have to learn Excel's object model if you expect to
achieve any competent level of automation skill as your employer
expects. Once you're familiar with developing directly in VBA then
maybe you'll want to resort to automating via some other language.

DLLs are a good idea (in any language). VBA projects support their use
via References to registered COM objects/libraries.

A word of advice regarding x64 versions and x32 versions; you need to
develop x64 VBA in Excel x64 edition, and x32 VBA in Excel x32 edition.
In the latter case, always develop in the earliest version you expect
your users will use your project with.

HTH

--
Garry

Free usenet access at http://www.eternal-september.org
ClassicVB Users Regroup! comp.lang.basic.visual.misc


  #3   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 8
Default Best Excel Development Architecture? VSTO vs. VBA vs. VB.Net/C#.Netvs. ???

Garry's right. Start with straight Excel VBA. VSTO and .Net might be the
"modern" way to automate Excel from without, but it adds significant
overhead and footprint, and are generally overkill for projects that
only require automation within Excel. And even if you migrate to .Net,
your VBA experience with the object model will be invaluable.

VBA will live for a long time. The ancient XLM language was introduced
in Excel 4 back in the early '90s and is still supported in Excel 2010.
The VBA language has been upgraded to support 64-bit, though they
haven't done squat with the IDE since (I think) Excel 97.

I have heard rumors of .Net being integrated into some future version of
Office, something called VSTA ("A" for applications), but I don't know
when. I think the rumors said VSTA and VBA would coexist.

There is so much legacy VBA in the business world that Microsoft will be
forced to support VBA for another generation, I think generation of
programmers, not generation of Office. I'm planning to retire while
still working on VBA.

- Jon
-------
Jon Peltier
Peltier Technical Services, Inc.
http://peltiertech.com/


On 7/12/2010 9:59 PM, GS wrote:
I would suggest you start programming directly within Excel's VBA IDE.
This will give you more speedy results, allow you to use the macro
recorder to learn how its objects, methods, properties, and collections
work, AND you can test code on the fly more easily/readily during
development.

As far as your assertion that VSTO is M$'s replacement for VBA goes,
that's never going to happen! VBA has been upgraded for x64 and so I
expect they plan to continue with it as the default macro language for
M$O apps.

If you want some good reference material for serious application
development in the Excel platform then check these out:

http://www.appspro.com/Books/Books.htm

In any case, you'll have to learn Excel's object model if you expect to
achieve any competent level of automation skill as your employer
expects. Once you're familiar with developing directly in VBA then maybe
you'll want to resort to automating via some other language.

DLLs are a good idea (in any language). VBA projects support their use
via References to registered COM objects/libraries.

A word of advice regarding x64 versions and x32 versions; you need to
develop x64 VBA in Excel x64 edition, and x32 VBA in Excel x32 edition.
In the latter case, always develop in the earliest version you expect
your users will use your project with.

HTH

Reply
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules

Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
Architecture Question Steve Haack Excel Programming 2 January 31st 07 08:02 PM
RTD server architecture - single topic update LJ[_3_] Excel Programming 0 March 12th 06 02:53 PM
Progamatically Formating Cells within VSTO for Excel Application Development using C# Sharad Vyas Excel Programming 5 December 10th 05 04:42 AM
.NET, CAS and Excel Development Scott Gauthier Excel Programming 0 June 17th 05 10:56 PM


All times are GMT +1. The time now is 05:44 PM.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Copyright ©2004-2024 ExcelBanter.
The comments are property of their posters.
 

About Us

"It's about Microsoft Excel"