Integration with Office 2007 VBA and Visual SourceSafe - vba

I'm wondering if there's a way to manage VBA code authored in Excel 2007 using Visual SourceSafe? Office XP and 2000 apparently had 'developer additions' that supported this (e.g. http://msdn.microsoft.com/en-us/library/aa164419(office.10).aspx). Is this support missing in Office 2007?

The Office XP VSS addin worked fine in Excel 2007 last time I tried it (been a couple of years). It's really a VBA addin, and VBA hasn't changed much since Excel 2000 (eg, registered addins work across versions). You might need an MSDN subscription to download it, though- that's where I got it.

Related

Visual Studio 2017 VB.Net Office 2010 Compatibility Issues

I created a program in Visual Studio 2017 using VB.net, which takes form data and creates a Word document with an Excel graph. I am running Win 10 and Office 2016. I have successfully run the program on Windows 7 - 10 (32 or 64) on both Office 2013 and Office 2016. However, I need the program to run on a Win 10, Office 2010 machine. Any version of Windows with Office 2010 simply says the program/app has stopped running.
Per what I have found on this site and other sites, it appears that such a program can run on Office 2010 with a certain .NET version and Visual Studio 2010 Tools for Office Runtime installed. Here is the link:
https://msdn.microsoft.com/en-us/library/bb772080.aspx
I have tried installing these on multiple systems, but it seems to make no difference in the result. I used the Event Viewer to see what was going on, and it looked like there was some security setting preventing the program from operating with Word and Excel, but when I changed the security settings in those two programs per advice received elsewhere, I still got the same result.
My searching leads me to believe there is a solution, and a simple one at that, but it has eluded me. Thanks in advance for advice.
My code worked fine on computers with Office 2013 or 2016, but some changes made from 2010 to 2013 lead some of my code to be invalid when trying to operate on computers running Office 2010. The Word code was fine, but the Excel code had three issues. Here is what they were and how I fixed them:
Office 2010 and before do not allow Excel data label width modifications, so I compensated by increasing the overall width of the chart.
The method FullSeriesCollection for my Excel Series was not valid for Office 2010, so I used the method SeriesCollection instead.
I had to put my variable for the Excel chart range above my variable for the Excel chart. I'm not sure exactly why this was needed, because it worked fine in Office 2013 & 2016.

VBA codes developed in Excel 2003

I just need to ask to what degree Macros developed in Excel 2003 are compatible with Excel 2010 and 2013?
I would tend to think that there would be some issues, but from your experience, what percentage of macros developed in Excel 2003 can work in Excel 2010/2013?
The issue you are going to have is with 32/64 bit compatibility. Office 2003 is 32-bit only; starting with Office 2007, some versions are 64-bit.
Microsoft has a pretty good writeup of the issues on this page.
You should do some online searches for VBA features that were "deprecated" after Excel 2003. The single major feature that no longer works is Application.FileSearch
Just from msdn.microsoft.com:
Excel 2010 Object Model Changes Since Earlier Versions
What's New in Excel 2010
New Objects, Collections, and Enumerations_Excel.Dev
New Members and Constants_Excel.Dev
Tables of VBA Object Model Changes
VBA Object Model Changes
Word 2010 Object Model Changes Since Earlier Versions
What's new for VBA developers in Project 2013
And so on ...

Creating Word Addin for 2007 and 2010

I'm very new with VSTO development. Is it possible to develop Ms Word Add-In that can be used in Word 2007 and Word 2010?
When I try debugging an add in for Word 2010 in a machine that have Word 2007, it is said that "the required version of the Microsoft Office Application is not installed". Same thing happen when I try debug add in for Word 2007 with a machine that have word 2010.
Thank you for your help.
It is certainly possible to create a vsto addin that runs on both office 2007 and 2010 but there are some restrictions on the what and how. Microsoft has created a rather comprehensive document about this topic: Running Solutions in Different Versions of Microsoft Office

VBA in New Versions of Excel

Here is a question for my Father. He has been using VBA in Excel for more than two decades going from Excel 5 to this day where he is using Excel 2002.
As he has used VBA in Excel for so long, making extensive use of the ability to record macros, he has continued to invest in Excel as it has been rather stable (in terms of its VBA functionality) across each version. Now, he is considering upgrading to a newer version of Excel, however I have read reviews that Microsoft completely botched their VBA interpreter in Excel 2007, as scripts that used to work in Excel 2003 or earlier would become painfully slow or stop functioning altogether. Then looking into Excel 2010, I've read that a lot of the issues with Excel 2007 "haven't been fixed". As I am not sure as to the credibility of these reviews, which I have read I am posing this question For all those folks out that are currently making heavy use of VBA in Excel:
Would it be advisable for someone who has a great deal of time and work invested in VBA from Excel 2002 or earlier to upgrade to either Excel 2003, 2007 or 2010?
There were several performance issues with Excel 2007 VBA. Many of these were fixed in Excel 2007 SP1. There were also a number of macro recorder problems with Charts and Shapes.
My personal recommendation would be Excel 2010: the VBA performance and Macro recorder issues have been fixed and I find the overall stability of Excel 2010 to be superior to most recent versions (but YMMV).
Migrating from Excel 2002 to 2007 or 2010 will involve learning to use the ribbon: some people like it and some people hate it, but it certainly will require effort for a long-term Excel user. Note that the VBA IDE has not changed.
If your father survived the migration to Excel 97, the switch to 2007 or 2010 will feel like a cakewalk. Other than the new GUI, the changes are of the more-better variety. I haven't run into any compatibility issues including the big jump from 97 to 2003.
To get up to date, I'd recommend John Green et al's Excel 2007 VBA Programmer's reference.
Most of the VBA/Excel programs that I developed in Excel 2003 work just fine in 2007 and newer without modification (It seems like I remember most issues being chart related). Of course it's possible that at least some of his recorded macros or hand coded VBA will not work in Excel 2007 and newer. However with a little debugging the old code can likely be converted without too much headache (search the line that errors and you will likely find out how to rewrite the line).
There are free add-ins such as UBitMenu and others to bring back the old style menu menu.
I wrote a benchmark for Excel VBA earlier this year that contains 6 different performance tests. The results submitted by 373 people so far clearly show that excel 2007 is the slowest of all versions. Among Excel 2003, 2007, 2003, 2002, Excel 2010 performs best on most tests followed by Excel 2003. Between 2010 and 2003 the composite results are fairly close, but the individual benchmark tests show that Excel 2003 is much faster at displaying data on a chart while 2010 is faster with complex VBA based calculations. The complete results from the benchmark are located at http://exceltrader.net/et2/benchMark.php.

Outlook 2007 Add-in in Outlook 2003

Just a quick questions..
I have made an outlook add-in for 2007 version and when I tested it with version 2003 it did not seem to work.
Is there any special procedure I need to follow to enable to add-in in Outlook 2003 or it won't work at all? I hope I don't have to create a new one for 2003.
Thanks,
SL
Assuming that you are referring to an add-in created using VSTO.
When you create an add-in for Office 2007 the referenced Interop Assemblies will be the ones associated with Office 2007 and this is the main reason for your add-in not to work on Office 2003.
One alternative will be to reuse the custom add-in code but build it against Office 2003 Interop assemblies. This will work if you're not using any functionality inherent to Office 2007.
IIRC, a VSTO add-in developed for Office 2003 will possibly work on Office 2007 without change, but never the other way around.