2000 -> 2007: gotchas?

A

Auric__

I've acquired a copy of Office 2007. Up to now, I've been using Office 2000.
As far as VBA goes, are there any major "gotchas" I need to be aware of? Or
should my 2000 code "just work" under 2007? (Specifically Excel; I don't
usually program for the rest of the Office suite, but I program the hell out
of Excel.)
 
G

GS

Auric__ pretended :
I've acquired a copy of Office 2007. Up to now, I've been using Office 2000.
As far as VBA goes, are there any major "gotchas" I need to be aware of? Or
should my 2000 code "just work" under 2007? (Specifically Excel; I don't
usually program for the rest of the Office suite, but I program the hell out
of Excel.)

Given the support for backward compatibility that XL12 has, your XL9
projects will work just fine. My first VBA projects were XL9 and they
still work in XL12. I don't service those early projects much anymore,
but later editions have been upgraded to make use of Excel's evolving
features/functionality.

However, there's a lot of changes beyond XL9 that you'll most likely
WANT to code for so your projects can take advantage of the newer
features and functionality.

The only 'gotcha' I encountered was dictator apps no longer replacing
the menubar since it was replaced by the Ribbon. Another 'gotcha' is
that XL12+ doesn't support 'floating' toolbars and so you'll need to
rework how to handle those if your projects use them. All custom
toolbars/menus will be allocated to the Addins tab of the Ribbon. You
may want to make your own custom tabs or manipulate the Ribbon to suit
your project needs. In this case, I strongly recommend Ron De Brun's
MSO Ribbon solutions.

Best wishes in your endeavours...
 
G

GS

I apologize for the mispelling...

...I strongly recommend *Ron de Bruin's* MSO Ribbon solutions.
 
A

Auric__

GS said:
Auric__ pretended :

Given the support for backward compatibility that XL12 has, your XL9
projects will work just fine. My first VBA projects were XL9 and they
still work in XL12. I don't service those early projects much anymore,
but later editions have been upgraded to make use of Excel's evolving
features/functionality.

However, there's a lot of changes beyond XL9 that you'll most likely
WANT to code for so your projects can take advantage of the newer
features and functionality.

I'll probably want it to still work under 2000, since I have multiple copies
of that, but only one copy of 2007. (If necessary, I will use the methods
from the current "Compiling Error in Earlier Version of Excel" thread, but I
don't expect to need to.)
The only 'gotcha' I encountered was dictator apps no longer replacing
the menubar since it was replaced by the Ribbon. Another 'gotcha' is
that XL12+ doesn't support 'floating' toolbars and so you'll need to
rework how to handle those if your projects use them. All custom
toolbars/menus will be allocated to the Addins tab of the Ribbon. You
may want to make your own custom tabs or manipulate the Ribbon to suit
your project needs. In this case, I strongly recommend Ron De Brun's
MSO Ribbon solutions.

As it happens, my VBA in Excel deals almost exclusively with number crunching
and displaying the results. What little remains typically deals with
crunching non-numeric data, custom sorting, and the like, and *nothing* of
mine involves custom menus, toolbars, etc. Not even forms. (I don't even make
custom whatevers for my own use.)
Best wishes in your endeavours...

Same to you, sir.
 
J

Jim Cone

Also, the color system is different, many colors are going to look strange.
For instance, ColorIndexes have been sabotaged - using "Color" not "ColorIndex" will get you further
along.
Please don't ask me to explain the new system, I can't.
'---
Jim Cone
Portland, Oregon USA
http://www.mediafire.com/PrimitiveSoftware
(free and commercial excel programs)
 
A

Auric__

Jim said:
Also, the color system is different, many colors are going to look
strange. For instance, ColorIndexes have been sabotaged - using "Color"
not "ColorIndex" will get you further along.
Please don't ask me to explain the new system, I can't.

That good, huh?

Luckily, I can't think of any instances where my code uses any specfic
colors. About the only text formatting I do use are Bold and (rarely) Italic.
I might bump the font size up, but that's *very* rare.
 
M

Martin Brown

I've acquired a copy of Office 2007. Up to now, I've been using Office 2000.
As far as VBA goes, are there any major "gotchas" I need to be aware of? Or
should my 2000 code "just work" under 2007? (Specifically Excel; I don't
usually program for the rest of the Office suite, but I program the hell out
of Excel.)

A longish list but they are mostly pretty obscure features that you may
not actually use. Certain dialogues for file find withdrawn etc.

Main ones that forced me to fork the code are gratuitous changes to
graphics objects coordinates and colours together with a bunch of
interesting race conditions if you ever draw large numbers of graphs
from VBA. Basically stuff that works fine before XL2007 is broken in the
later versions and for good measure some of the improvements in XL2010
put it back to how it was before. There are work arounds for all of it.
XL2007 can be glacially slow for larger datasets and now has to display
an estimated time to completion to stop users thinking it has crashed.
The same operations on XL2003 took under 5 seconds.

It is better now after the SPs than it was out of the box originally.

Defaults for charts are awful in XL2007 unless you like the drawn by a
kid with a wax crayon look for your business graphs. And to add insult
to injury customising charts makes them *even* slower to draw.

The macro recorder in XL2007 is wrecked and completely FUBAR.

I expect others will chime in with more examples of gotchas.

Why move to 2007 at this stage when XL2010 is out?

Regards,
Martin Brown
 
A

Auric__

Martin said:
A longish list but they are mostly pretty obscure features that you may
not actually use. Certain dialogues for file find withdrawn etc.

Main ones that forced me to fork the code are gratuitous changes to
graphics objects coordinates and colours together with a bunch of
interesting race conditions if you ever draw large numbers of graphs
from VBA. Basically stuff that works fine before XL2007 is broken in the
later versions and for good measure some of the improvements in XL2010
put it back to how it was before. There are work arounds for all of it.
XL2007 can be glacially slow for larger datasets and now has to display
an estimated time to completion to stop users thinking it has crashed.
The same operations on XL2003 took under 5 seconds.

It is better now after the SPs than it was out of the box originally.
....interesting.

Defaults for charts are awful in XL2007 unless you like the drawn by a
kid with a wax crayon look for your business graphs. And to add insult
to injury customising charts makes them *even* slower to draw.

Fortunately, I only have 2 spreadsheets with any kind of charts, and those
are both just simple line graphs. Actually... I use one of them to estimate
future needs. I'll have to see if that's changed any.
The macro recorder in XL2007 is wrecked and completely FUBAR.

Luckily, I rarely need it.
I expect others will chime in with more examples of gotchas.

Why move to 2007 at this stage when XL2010 is out?

Money. I don't spend my own on office software; I use what I have until
someone else pays for a new version for me. Usually it's work, but this time
my sister-in-law got 2010 for herself, so I got her copy of 2007.
 
T

Tim Williams

Changed in XL2007: copying a sheet via code no longer makes the copy
the ActiveSheet.

That's the only issue I've encountered which broke older code.

Tim
 
A

Auric__

Tim Williams said:
Changed in XL2007: copying a sheet via code no longer makes the copy
the ActiveSheet.

That's the only issue I've encountered which broke older code.

Not something I do via code anywhere, but I'll bear it in mind. Thanks.
 
J

joeu2004

Auric__ said:
I've acquired a copy of Office 2007. Up to now, I've
been using Office 2000. As far as VBA goes, are there
any major "gotchas" I need to be aware of? Or should
my 2000 code "just work" under 2007?

Although you seem to be interested in __program__ incompatibility, I want to
forewarn you of a __programming__ (i.e. usage) "incompatibility".

Bottom line: Do not get rid of your copy of Excel 2000. Instead, custom
install Office 2007 so that you can retain Office 2000.

I am fortunate to have done that when I installed Office 2010 on a system
that had (still has) Office 2003.

I discovered that the F1 help information in Excel 2010 VBA is nowhere near
as good as Excel 2003 VBA. Fortunately, I still have the latter to go back
when I need help.

I don't know if the same can be said of Excel 2000 VBA v. Excel 2007 VBA.
But you might be sorry if you assume otherwise.
 
A

Auric__

joeu2004 said:
Although you seem to be interested in __program__ incompatibility, I
want to forewarn you of a __programming__ (i.e. usage)
"incompatibility".

Bottom line: Do not get rid of your copy of Excel 2000. Instead,
custom install Office 2007 so that you can retain Office 2000.

I am fortunate to have done that when I installed Office 2010 on a
system that had (still has) Office 2003.

I discovered that the F1 help information in Excel 2010 VBA is nowhere
near as good as Excel 2003 VBA. Fortunately, I still have the latter to
go back when I need help.

I don't know if the same can be said of Excel 2000 VBA v. Excel 2007
VBA. But you might be sorry if you assume otherwise.

I'll keep that in mind, but I can usually find what I want in MSDN if I can't
find it in the help files.

(Also, I'd rather not have 2 versions of *anything* installed without a
*very* good reason, and "inadequate helpfiles" aren't good enough for me.)
 
G

Gord Dibben

At a minimum find and save all the 2000 version VBA???.chm files.

You can d-click to open them when you really need help.

Or...........if brave enough...............rename the 2007 *.chm files

Back them up first.


Gord
 
G

GS

Auric__ formulated on Wednesday :
(Also, I'd rather not have 2 versions of *anything* installed without a
*very* good reason, and "inadequate helpfiles" aren't good enough for me.)

I have XL9 through XL12 installed on my development machine for testing
purposes. While XL10 is the earliest version I now use, I did have as
far back as XL8 on my former development machine. Fortunately, noone I
do work for is using that version any longer. You might find it
interesting and eye-opening to build projects in XL11 and see how they
behave in XL12. Testing alone is a very good reason to have multiple
versions installed on the same machine<IMO>!
 
A

Auric__

Gord said:
At a minimum find and save all the 2000 version VBA???.chm files.

You can d-click to open them when you really need help.

Is there *that* little info in the 2007 helpfiles to warrant it?
Or...........if brave enough...............rename the 2007 *.chm files

Back them up first.

I've got 2000 on my server's Windows install; I can copy them over if-and-
when.
 

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