Learning VB.net coming from a Access VBA background

I see a need to go to VB.net - I'm looking for the best way to learn the new language - Best Books / websites / etc.

I have extensive VBA experience with Access going back to version #1 and extensive experience with SQL Server.  What I'm looking for is something that would take me from my current knowledge to being capable with VB.Net.

Also do I have to learn different languages for desktop apps and for Web apps.

Thanks in Advance
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

I have a lot of VBA experience as well as VB 6,  There is a superficial syntax similarity between VB.NET and other versions of VB so that will help a little.  Other than that  knowledge of VBA will not be much help.  In general, the learning curve you have to climb is learning the .Net environment and libraries and the particular syntax that you choose (VB.NET or C# or something else) is really only for comfort sake rather than something that will give you a big leg up.  

You can use VB.NET for both desktop and web apps.  That said, there are a lot of differences in the way you build the projects and use the language even though the language itself is the same.  

I don't think my answer is good news and I'm sorry about that but I think that recognizing that VB.NET is actually something completely different which has been wrapped to make it superficially look like VB will help you climb the curve faster.
Paul JacksonSoftware EngineerCommented:
agree with @MajorBigDeal, best to throw away what you think you know and accept that learning VB.Net will be and is learning a completely new language and also a different way of programming, i.e. more object orientated when done properly.
When it comes to Web apps you will also be learning ASP.Net which replaces ASP and this also now has two flavours, the older WebForms, and the newer MVC.
Scott McDaniel (Microsoft Access MVP - EE MVE )Infotrakker SoftwareCommented:
I did exactly what you're talking about - moved from a VBA/VB background to VB.NET. I found that basic programming techniques (like Loops, If-Then-Else, And/Or logic methods, etc) were the same, but that was about it. I'm a long time Access developer (and an Access MVP), so I would be at the top of the "food chain" regarding the use of Access - but the skills I had learned over the years with Access didn't help me too terribly much when I made the move.

I was comfortable with OO-type programming, having made use of Class objects and such in my VBA work (as much as possible, anyway), and so I didn't struggle as much as some with the shift, but it can be bit daunting at first. Like Paul Jackson suggests, in many cases you must throw away the concepts you learned in Access and replace them with concepts better suited to OO-style programming.

For example: The concepts of Recordset-based programming is much different in .NET. I struggled mightily with this at first, as I was doing a lot of "unbound" work at the time. ADO.NET is a much different animal from plain ADO, and that took me quite a while to figure out. I used my meager OO background and moved to an object-based paradigm, and found that .NET was much easier to work with once I made that "shift".

Plus, you must learn the Visual Studio environment rather than a VBA-type editor. This can be frustrating at first, but once you figure it out, you'll cringe every time you have to go back to the Access editor. VS is a much more evolved IDE than the VBA editor, and you'll quickly learn to love it.

All in all, it's definitely worth the time to learn, and given the direction that Access is currently going, may be your only path to a livelihood in the future :). I did so out of sheer necessity - I'm under contract with several software companies to create utilities and extensions for their customers, and those customers often balked when I mentioned creating an Access-based utility for them.
Ultimate Tool Kit for Technology Solution Provider

Broken down into practical pointers and step-by-step instructions, the IT Service Excellence Tool Kit delivers expert advice for technology solution providers. Get your free copy now.

LJGAuthor Commented:
Thank you everyone - Great info.

Is there a book or website to get me to a point.  I'd like to create a form with different controls hooked to a couple of tables in SQL Server - you know - Hello World type of thing.

Are the following any good?  Do you suggest others?

Sams Teach Yourself Visual Basic 2012 in 24 Hours, Complete Starter Kit Paperback – October 18, 2012

Stephens' Visual Basic Programming 24-Hour Trainer Paperback – February 8, 2011


There is so much good online information that I've pretty much stopped buying computer books.  I used to have a whole library (nearly a dozen books on C++ alone) but I've given them all away.    Which of those sites is best for you personally is hard to say but I was impressed by the homeandlearn one, they even take into account the different versions of Visual Studio.  So I would go with that one.

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
LJGAuthor Commented:
Thanks All - You gave me good info.

If I get a chance to go forward - I'll come back to post what I learn as I go forward.
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Microsoft Access

From novice to tech pro — start learning today.

Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.