PDA

View Full Version : [SOLVED] Does knowledge of Visual Basic.NEt help with VBA?



K. Georgiadis
04-30-2005, 07:38 PM
My County College is offering courses in Visual Basic.NET. I am really interested in VBA for Excel (for which there are no courses) and I have no interest whatsoever in application/software development. A question to you experts: is a basic knowledge of Visual Basic.NET of any benefit (even peripherally) in coding VBA?

BlueCactus
04-30-2005, 09:51 PM
It probably is, but I'm not sure if it's the best way of getting there. I often refer to VBA.NET documentation I find on the web while trying to address issues with VBA for Office. But there are a lot of differences in terms of implemented features.

If nothing else, maybe you'll be able to report back to us with Microsoft's May 2005 explanation of what the hell .NET is supposed to be. ;-)

Howard Kaikow
05-01-2005, 05:20 AM
My County College is offering courses in Visual Basic.NET. I am really interested in VBA for Excel (for which there are no courses) and I have no interest whatsoever in application/software development. A question to you experts: is a basic knowledge of Visual Basic.NET of any benefit (even peripherally) in coding VBA?

VB .NET is irrelevant for using VBA in Office, and can indeed be confusing.

If you need to learn Excel VBA:

1. Start with the MSFT Press Excel VBA Step By Step.
2. Get John Walkembach's book. See http://www.j-walk.com/ss/books/xlbook25.htm.
3. Get the Progessional Excel Development book, see http://www.bmsltd.ie/ProExcelDev/Default.htm.

K. Georgiadis
05-01-2005, 06:01 AM
Thanks guys! I have MS Excel VBA Step by Step and John W's book. (of course, based on my sophomoric posts, you must have deduced that neither of these has helped me very much!)

You confirmed what I was suspecting and I am scrapping the idea of a VB.NET course.

Paleo
05-01-2005, 08:41 AM
I often refer to VBA.NET documentation
There is no such a thing, VBA.NET. You refer to VB.NET documentation which an Object Oriented language while VBA is an events oriented, so it would not be of much help for sintax, only for logic and even for just some aspects.

The only reason I may think studying VB.NET could be usefull for those who want to work with Excel is if you are planning to program for excel using Visual Studio .Net and VSTO (I have two articles here about VSTO and one out of them telling how to migrate from VBA to VB.NET which you may find very helpfull at this question).

BlueCactus
05-01-2005, 08:49 AM
Oops! You're right. Shows you how much attention I really pay to it! :giggle

Paleo
05-01-2005, 08:53 AM
Oops! You're right. Shows you how much attention I really pay to it! :giggle
:rotflmao: :rotflmao: :rotflmao:

You right, actually we dont even need to bother with VB.NET yet, as VBA will still rule for many years. Just to bring a major issue for this migration: VSTO only works fine IF you user has Microsoft Office 2003 Professional, not on Standard, Academic, Small Business and so on. I cant figure out why MS didnt make available a download to make it work on other versions, but it is a major issue!

Bob Phillips
05-01-2005, 11:09 AM
You right, actually we dont even need to bother with VB.NET yet, as VBA will still rule for many years.


With support for VB6 just having ended, that seems an unsubstantiaited statement to me. I am sure it has some mileage yet, but I bet MS would love to bring it under the Net umbrella, they just can't do it.

K. Georgiadis
05-01-2005, 04:08 PM
I had already decided that Visual Basic was not for me (I'm confused already, I don't need extra help!)

Paleo
05-02-2005, 07:31 AM
With support for VB6 just having ended, that seems an unsubstantiaited statement to me. I am sure it has some mileage yet, but I bet MS would love to bring it under the Net umbrella, they just can't do it.

Remeber that Office still have support for version 5 macros.

Howard Kaikow
05-02-2005, 08:59 AM
With support for VB6 just having ended, that seems an unsubstantiaited statement to me. I am sure it has some mileage yet, but I bet MS would love to bring it under the Net umbrella, they just can't do it.

Office macros are in VBA, which is entirely based on VB.

At some point, I expect that MSFT will have a .NET variant of "VBA" for use within Office. however, at best that will happen in the next release of Office, which will also have VBA.

VBA is necessary for programming in Offiice 97 to Office 2003, so the need for VBA will be arouund for some time.

Of course, one could automate VBA from VB .NET or from VB 6. However, it is a lot easier in VB 6 than in VB .NET, especially for the "non-programmer".

The biggest shortcoming, at least to me, for using VB .NET, instead of VB 6, for automating Office is that VB .NET code cannot be protected from prying eyes. With VB 6, one can compile the code into .exe or .dll files and the source code is protected.

Bob Phillips
05-02-2005, 09:25 AM
Office macros are in VBA, which is entirely based on VB.

VBA is necessary for programming in Offiice 97 to Office 2003, so the need for VBA will be arouund for some time.

There is a huge base of applications in VB6 out there as well, but support for that has ended. AFAIR it is only guaranteed to be around until 2008 (?). This is why the Classic VB petition is important, MS must undedrstanmd that they have a responsibility to the users/businesses that have invested heavily in their products, and they cannot just abandon them because it is more convenient.

Go and sign the petition.

Howard Kaikow
05-02-2005, 10:42 AM
There is a huge base of applications in VB6 out there as well, but support for that has ended. AFAIR it is only guaranteed to be around until 2008 (?). This is why the Classic VB petition is important, MS must undedrstanmd that they have a responsibility to the users/businesses that have invested heavily in their products, and they cannot just abandon them because it is more convenient.

Go and sign the petition.

msft will not commit suicide by not allowing vb 6 to run in future os for quite some time.

i will continue to use vb 6, instead of vb .net, to automate office merely because:

1. Such solutiobs can work with with Office 97 to Office 2003, and likely future versions of Office, as VBA would still be around in a ,NET-ized Office, just as WordBasic is around now.

2. VB 6 allows me to hide my code, VB .NET does not. I would abandon VB 6 for future needs if msft gave us a way to protect our source. VB .NET is a better language, for "programmers", than is VB 6, not to mention the benefits of using Wondows Forms and the .NET Framework.

As an intermediate step, I'll likely resort to using VB .NET wrappers to call VB 6 .DLLs for Office.

Ken Puls
05-02-2005, 11:31 AM
My County College is offering courses in Visual Basic.NET. I am really interested in VBA for Excel (for which there are no courses) and I have no interest whatsoever in application/software development. A question to you experts: is a basic knowledge of Visual Basic.NET of any benefit (even peripherally) in coding VBA?

Actually... VBAX offers Excel VBA training. See here (http://www.vbaexpress.com/training.htm) ;)

Paleo
05-02-2005, 07:43 PM
Actually... VBAX offers Excel VBA training. See here (http://www.vbaexpress.com/training.htm) ;)
Exactly! The best place to learn it!