Excel and .NET

R

Rob van Gelder

Hi.

The latest Excel I've used is 2002, which has VBA. Works great.
I don't know if Excel 2003 has VBA.

My guess is that a future Excel will use VB.NET instead of VBA (or maybe
both at the same time)

Does anyone know any different. Where is VBA going? Does it have a future?
What should I be doing now to protect myself and ease migration/maintenance?

Cheers!
 
C

Charles Williams

Excel 2003 has VBA.

I have not seen any public MSoft statement on VBA.

It seems reasonable to me to assume that MSoft will want its Excel customers
to migrate to Excel 2004/2005 etc, and that many/most large customers would
find this very difficult to do without VBA and good compatibility.

But plainly MSoft would like to eventually get rid of VB6 and VBA in order
to maximise the returns from its massive investment in .Net: I just dont see
how they are going to manage this within the next 7-8 years from either a
technical or business perspective.

regards
Charles
______________________
Decision Models
The Excel Calculation Site.
www.DecisionModels.com
 
H

Hank Scorpio

The latest Excel I've used is 2002, which has VBA. Works great.
I don't know if Excel 2003 has VBA.

Indeed it does.
My guess is that a future Excel will use VB.NET instead of VBA (or maybe
both at the same time)

Possibly. Frankly I doubt that we can know for sure unless someone
named Gates or Ballmer would care to stop by the group and drop a word
or two. But bear in mind that Excel has been kept at (for example) its
annoying 256 column * 65536 row size for four consecutive releases
now. MS doesn't seem to be in a hurry to do anything which would
damage backward compatibility... or indeed move the product forward.

(See, for example, John Walkenbach's review of XL2003 at

http://j-walk.com/ss/excel/xl2003.htm)

My guess, and it's little more than that, is that you'll see VBA
around for a while yet. Certainly nothing will happen until the next
Office release, which won't be for at least 18 months to 2 years. And
I'll be VERY surprised if that dumps VBA entirely, even if it
introduces support for .Net. The big problem is that there is going to
be a very, very big installed base of users running from 97 to 2003,
and I can't see 2005 (or whatever it's called) making its automation
code unusable by them.
Does anyone know any different. Where is VBA going? Does it have a future?
What should I be doing now to protect myself and ease migration/maintenance?

Personally? I just avoid variants and non-zero based arrays, though
I've always done that anyway. If you want a good run-down on the
differences between the two, you'll find one here:

http://www.mvps.org/vb/
 
S

Stephen Bullen

Hi Rob,
The latest Excel I've used is 2002, which has VBA. Works great.
I don't know if Excel 2003 has VBA.

Yes it does.
My guess is that a future Excel will use VB.NET instead of VBA (or maybe
both at the same time)

I think it would be financial suicide for Microsoft stop including VBA in
Office; the large numbers of their corporate customers that have significant
VBA-based applications would simply not upgrade to that version.

On the other hand, the Visual Studio Tools for Office is an attempt to bring
Office to the .Net developer, so it's a reasonable assumption that efforts
will be made to also bring .Net to the Office developer (which is a VERY
different prospect!).

When/if .Net is introduced to Office, I'm pretty sure that it will be
alongside VBA and the market will decide how much it's used.
Does anyone know any different. Where is VBA going? Does it have a future?

Yes, VBA has a long future. Considering that the XLM macro language was last
used as the primary programming language in Excel 4, but is still supported
some ten years later in Excel 2003, I would expect to see support for VBA
remaining for (at least) a similar timeframe.
What should I be doing now to protect myself and ease migration/maintenance?

Not a lot <g>. Anything you *do* do now is just as likely to lead you down
the wrong path as the correct one. If we can assume that .Net will be
introduced to Office using VB.Net and/or C# (i.e. not a new VBA.Net language),
you might want to start learning about VB.Net, the .Net framework and the
issues that occur when converting VB6 applications to VB.Net, as most of those
are likely to occur with VBA too.

Regards

Stephen Bullen
Microsoft MVP - Excel
www.BMSLtd.ie
 
R

Rob van Gelder

Thanks Stephen.

Good point about XLM. Ten years is a lot for any product.

Cheers
 
R

Rob van Gelder

Hank,

Thanks for the tips.
I've just started using 0 based arrays in VB. I don't know why I treated VB
differently. Every other language I code with uses 0 based.

I'll give that link a read.

Cheers
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top