About Excel VBA

M

Miguel

Hello:

Is there some important differences in the Visual Basic of Excel 2003 and
Excel 2007?

If I practice VBA in Excel 2003, could I have problems to do the same
applications in Excel 2007?
 
J

JLGWhiz

There are some differences but not enough to worry about. If you learn VBA
in Windows2003, your code will work in Windows2007, including Excel.
Most of the changes are in the user interface and how the files are stored,
but there are a few changes in the code. I believe you can Google the
differences. Just type "Excel 2007 VBA differences" or "Excel 2007 VBA
changes" and you should get several sites that discuss it.
 
J

Jim Cone

The VBA you learn will work in any Excel version.
You will just need to learn version specific exceptions.

As a general rule, code from an older version will work in newer versions,
but the reverse is not always true.

However, XL2007 is a major break from past Excel versions.
It has a much larger worksheet and the Menu bar and most toolbars
are no longer used. In addition, a different programming language
is required in XL2007 to program the "ribbon" replacement for the
menus and toolbars.
Outside of the menu/toolbars, the VBA is much the same as older versions.

A comment...
It is best to limit your questions to one Excel newsgroup at a time.
Some answers provided in these groups can require extensive thought
and effort. Duplicate questions just waste peoples time.
--
Jim Cone
Portland, Oregon USA




"Miguel" <[email protected]>
wrote in message
Hello:
Is there some important differences in the Visual Basic of Excel 2003 and
Excel 2007?
If I practice VBA in Excel 2003, could I have problems to do the same
applications in Excel 2007?
 
H

Howard31

I have written lots of VBA code in xl2003 and in xl2007 I found very little
differences. The only few differences in VBA for xl2007 are things which
have been added or removed to reflect changes in Excel2007.
 
M

Martin Brown

JLGWhiz said:
There are some differences but not enough to worry about. If you learn VBA
in Windows2003, your code will work in Windows2007, including Excel.
Most of the changes are in the user interface and how the files are stored,
but there are a few changes in the code. I believe you can Google the
differences. Just type "Excel 2007 VBA differences" or "Excel 2007 VBA
changes" and you should get several sites that discuss it.

That is way too optimistic. Every previous version of XL from XL97
upwards to XL2003 was basically compatible for VBA applications. There
were a few trivial changes to syntactic sugar but nothing more than
qualifying the odd field name or changes to keywords in international
variants.

XL2007 is broken in gratuitous ways and it is virtually guaranteed that
any non-trivial VBA application that runs in XL2003 or earlier will fail
dismally and catastrophically in XL2007. The codebase has to be split to
create an XL2007 working version. Even then there are a few weird
intermittent problems in XL2007 SP1. SP2 is too new to comment.

If you are learning VBA then learn on XL2003 and avoid 2007 like the
plague until it is stable enough to work with. SP2 might make it less
than glacially slow at graphing large datasets. Can't do much about the
default settings of 3 year old with wax crayon though :(

I's seriously suggest waiting for the next version. XL2007 is a *dog*.

If you have serious applications in XL2003 or earlier expect serious
trouble moving to 2007 if they use file directory services or graphical
objects. Another "improvement" in XL2007 is that macro capture almost
never works correctly where in previous versions it was more or less OK
but a bit set in concrete. This makes it *very* hard for beginners since
they cannot capture simple sequences of actions with any reliability.

Stick with XL2003 - you will retain your sanity that way.

Regards,
Martin Brown
 

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