VBA, VSTA, VSTO, VB, or VB.Net? Which way to go?

ryfahey

New Member
Joined
Dec 3, 2009
Messages
2
Hello,

I've been reading some articles around the internet, and while I have found that MS Office 2010 will indeed support VBA, I have also found that Microsoft is no longer working on developing VBA any further. This leads me to beg the question, "Should I continue using VBA, or should I switch over to something else, such as VB.Net or VSTO?" I work for a large financial institution, and my job is to write macros, databases, etc that help automate the tasks we perform on a daily, monthly or quarterly basis. I'm wondering if I can write these macros using VB.Net or some other variation of VB, or even C++, and if so, what steps do I need to take in order to move into that direction? Mainly, how well do these other variations of VB integrate with MS Excel, Access, etc? I would consider myself an advance VBA programmer, and have begun studying C++. If making a switch will be beneficial, I need to know why so that I can present a case to my management team.

Thanks,

-Ryan
 

Excel Facts

Fastest way to copy a worksheet?
Hold down the Ctrl key while dragging tab for Sheet1 to the right. Excel will make a copy of the worksheet.
True. I realize they are actively promoting it. I also read that they have no intention on removing it from any future versions of Office for Windows (they would lose a humungous customer base). But, they are no longer actively developing it. So eventually the technology is going to become stale. I would like to stay on top of the latest technologies. My thoughts are that since MS is no longer working on developing VBA and has switched their focus to the technologies that utilize the .Net framework, now is the time when many people will begin migrating away from VBA and toward newer technologies. This may only be the beginning of the beginning, but like I said, I would like to stay on top of the newest technologies so that 5 years down the road I don't find myself falling behind. I want to catch the wave and ride it.
 
Upvote 0
VSTO is MS's future in Office technology. While VBA will probably never go away, there are just too many people invested into this technology, all the newer MS efforts have been around its VSTO framework.
If you want fast functions and formulas your best option is to write XLLs in C++. VSTO does not support this.
I've been using C# in VSTO. VB.Net makes a lot of the development easier (e.g. optional parameters) but C# 4.0 has now covered that gap. PIAs are no longer required in the 4.0 framework either. This is where MS is making the big strides and development effort in my opinion.
With all that said, no one writing VBA code is ever going to go broke. There seems to always be that need :)
 
Upvote 0
Wierd that we suddenly have questions about VBA vs .NET and Robert arrives simultaneously to answer them. ;)
Edit: Ah, never mind. I see Robert has answered a year old post. Now it makes sense.

I wouldn't switch to .NET just because it is supposedly better. VBA will be supported in Office for years to come. There's a big learning curve and you may find yourself struggling with managing your solutions effectively. It seems to me that it has gotten better, but MS may yet change its mind in the future again and 5 years from now maybe .NET will be passe also (I don't really think so but on the other hand .NET will continue to change and evolve, as will Office products).

I would switch to .NET if you want functionality from it that you don't have with VBA - for instance, using the richer Forms classes.

I'm not an expert - just my two cents.
 
Upvote 0
Hi all,
Well, five years have gone since the last post on this topic. Would anyone like to share their thoughts about this thread at this point in time?
Have a great day!
 
Upvote 0
Hi all,
Well, five years have gone since the last post on this topic. Would anyone like to share their thoughts about this thread at this point in time?
Have a great day!


Hi,
. Just two cents from wot it looks like to a beginner (or rather very late starter!) just starting out with programming
. After my spreadsheet started getting annoyingly big and unpractical to handle I started thinking about getting into programming: I was keen to start at the basics but at the same time wanted to get on with my project. I went on a course on VB and got a good beginners grasp of the whole Object Orientated Programming thing. So VB seemed a good compromise between a more fundamental programming language and a final user friendly programming language…… … But then for practical reasons I moved “one step up”, that is to say bit less fundamental language and got into VBA. Amongst other reasons was the awesome support you can get from this Forum.. I found nothing as comparable in VB Forums.
(But I stand to be corrected!?)
. Somehow I have a “gut feeling” that VB would be better, more fundamental, and versatile but somehow I also get the gut feeling of Microsoft encouraging me more with support to use VBA. Can’t really explain why, just a gut feeling as a Programming beginner.
Alan
. P.s. 1. I deal with amongst other things importing and sorting text files. I find that can sometimes be done just as well with VB as with VBA, but again I may keep everything together for practical reasons in VBA.
. P.s.2. Might change my mind and go to VB if I take the plunge and learn all about Apps and then go away from a Spreadsheet over to an App as my main ”visible” thing that I use.
Alan
 
Upvote 0

Forum statistics

Threads
1,213,531
Messages
6,114,167
Members
448,554
Latest member
Gleisner2

We've detected that you are using an adblocker.

We have a great community of people providing Excel help here, but the hosting costs are enormous. You can help keep this site running by allowing ads on MrExcel.com.
Allow Ads at MrExcel

Which adblocker are you using?

Disable AdBlock

Follow these easy steps to disable AdBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the icon in the browser’s toolbar.
2)Click on the "Pause on this site" option.
Go back

Disable AdBlock Plus

Follow these easy steps to disable AdBlock Plus

1)Click on the icon in the browser’s toolbar.
2)Click on the toggle to disable it for "mrexcel.com".
Go back

Disable uBlock Origin

Follow these easy steps to disable uBlock Origin

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back

Disable uBlock

Follow these easy steps to disable uBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back
Back
Top