Adeybaby said:
Hi
The organisation I work for, a law firm, is looking to move to Office
2007. We have a suite of Word templates built in the conventional VBA
sense (using global and local templates, with a couple of COM addins).
We've been doing this for some time now and are aware that we can
simply run these templates under 2007 with a little fudging but it
doesn't seem to be the right solution going forward.
I would be inclined to base a decision on far more than a vague sense that
it "doesn't seem to be the right solution going forward". It may be that all
you need do is modify the user interface for your templates so that they
make use of a customized ribbon instead of custom toolbars. Office 2007
still supports VBA, and VBA gives full access to the Word object model and
(with the use of Microsoft-supplied libraries) full control over XML files.
I've heard about
using .NET and VSTO, utilising servers more and XML, but to be honest,
the waters are a bit muddy and I want a place to start. I'd love to
centralise our code, utilise new features and streamline the
operation.
All that can be done now with VBA. When I attended the MVP Summit when
Office 2007 was at pre-beta stage, the speakers at all the technical
sessions on automation and XML went to great lengths to make it clear that
just about anything you wanted to do with VSTO could also be done with VBA.
So, what do other people do? Where does the code live? What
ends up on the user's PC? I don't want to still be using VBA in 2
years time
Why not? VBA isn't going anywhere soon. For Microsoft to drop VBA in a
future version of office would mean that no organisation that has made a
substantial investment in VBA code (such as yours) coud upgrade to the new
version of Office unless and until all that VBA is rewritten in the
replacement language. That will delay - perhaps permanently - the decision
of many corporate customers to upgrade, and put a severe dent in Microsoft's
revenues. About a third of Microsoft's total revenue is from sales of
Office, and the corporate market is by far the largest part of that third.
It would be financial suicide for Microsoft fo kiss goodbye to that revenue
stream.
- I want to be a .NET developer!
In that case, learn .NET and get yourself a job with a company that is
developing .NET applications. But don't force your existing employer into an
expensive rewrite of all your existing applications simply in order to
indulge that wish. That would be a severe disservice to your employer.
What we have here is your perfectly natural desire to get an opportunity to
play with the latest technology, coming up against the financial interest of
your employer not to spend money on your salary while you do so on company
time rewriting existing applications in .NET before you can even start
adding new features.
If you are going to experiment with the new technology, and want to be able
to do so on company time, then you should get the company's agreement that
you will spend time researching the various alternatives and that they
should not expect specific outcomes from such research. If they agree to
that, then fine. if they don't, then you'll have to have fun with the new
technology in your own time.
--
Regards
Jonathan West - Word MVP
www.intelligentdocuments.co.uk
Please reply to the newsgroup
Keep your VBA code safe, sign the ClassicVB petition
www.classicvb.org