# Off Topic > The Water Cooler >  >  VBA BLUES...Why are you learning VBA?

## swade730

This maybe off topic but I joined this site and I've been receiving great help from all the contributors/Members. -Thank You

It fascinates me on how advanced programming in Excel can become through VBA.

I just wanted to get an idea of how much time to everyone puts into it and why.

I've considered becoming a full fledged VBA developer...But some of the codes/solutions I see are frightening and complex to say the least haha.

I want to understand enough VBA to land a better job in finance. 

My Questions:

Do you seek a deep understanding of every part/function of the code or just how to apply it?

For those that do VBA programming as a career; Do people see you in the office as a rockstar?

What are the downfalls/challenges of not delivering on a project? 

Are the best jobs out in California or New York?

How do you know you've reached that point of proficiency?

After learning VBA, is it easier to learn other languages like Python or SQL?

Sorry for all the questions...I'm just seeking some guidance and advice from the experts here.


For me , one of the most gratifying parts of VBA programming is clicking that button for the Macro you created and for everything to work...
funny-Jim-Carrey-car-screaming.jpg

Feel free to comment or respond to either one of my questions.


-Happy Holidays to all

----------


## noboffinme

Hi swade730,

Good questions!!

VBA used to be only supported by MS Office but has now spread to other software like Autocad so it's definitely worth learning.

I've been doing this for about 4-5 years & it was confusing at first but it comes naturally after a while. I have been able to build things & create reporting capabilities from scratch that my boss had no hope of doing OR getting the budget to pay for if I didn't have this skill set.

He hasn't called me a hero yet, he keeps paying me so I guess that's OK.  

I think once you get your head around VBA, it will make it easier to learn other languages & the things you have to consider when writing code.

Can't answer about the job opps but I have thought of getting a 'fill in' role to do overflow work at a business that sells VBA type support.

It's hard to tell when you're ready for the 'Real World' & no-one knows it all (that I've met yet anyway) so as long as you can methodically work through a task & provide a reliable program, it should be worth someones time to pay you.

Good luck !!  :Smilie:

----------


## fredlo2010

Hi,

Maybe you can get something interesting from my own experience. from this thread http://www.vbaexpress.com/forum/show...mmer-Interview

Thanks

----------


## swade730

> Hi swade730,
> 
> Good questions!!
> 
> VBA used to be only supported by MS Office but has now spread to other software like Autocad so it's definitely worth learning.
> 
> I've been doing this for about 4-5 years & it was confusing at first but it comes naturally after a while. I have been able to build things & create reporting capabilities from scratch that my boss had no hope of doing OR getting the budget to pay for if I didn't have this skill set.
> 
> He hasn't called me a hero yet, he keeps paying me so I guess that's OK.  
> ...



Thank You for your response. Very insightful!

----------


## xladept

Hi S,

Do you seek a deep understanding of every part/function of the code or just how to apply it?

Just how – I really believe that with doing comes understanding.

For those that do VBA programming as a career; Do people see you in the office as a rockstar?

I’ve been treated royally on several of my gigs – one client had “superuser” as my username.

What are the downfalls/challenges of not delivering on a project? 

I’ve been lucky so far – but, for me, no solution=no charge!

Are the best jobs out in California or New York?

My best opportunities were in New York (the city) and San Francisco.

How do you know you've reached that point of proficiency?

After a while your routines run on the first try.

After learning VBA, is it easier to learn other languages like Python or SQL?

I don’t know – but if you knew no programming prior to the VBA then it should be

----------


## abousetta

My five cents...

VBA is great for most situations with Excel (and Office for that matter), but...

1) Security is pretty much non-existant and even though you can put a password on a project or 'need the user to allow macros to run', they are easily bypassed by most people who know how to google. Therefore it's great for a local office (or home) environment, but not exactly the language you want to use to write the program that is going to make you rich.

2) COM Add-ins can work with Office and can be written in other languages (e.g. C++) and, I believe with Office 2013, there is a big move towards Java as the main programming language with Office.

3) MS seems to be intent on eventually moving everything into the 'cloud' or online like with Office 365. I'm not sure if it will take a year or 100, but eventually it seems everything will be done in a browser. Therefore if you are going to do this for a living, you need to keep close tabs on what is coming around the corner.

Personally, I do it to expedite my own work and the work of my team. I don't get paid per se to do it and most people who use don't really appreciate the time and effort it went into me learning the skills needed just to understand the code, much less write code proficiently. So my honest advice would be to talk to people who do this for a living and they can give you the inside scoop. Also ask about where they think things will be in 5 years/ 10 years/ etc. Also there is a lot of competition out there (e.g. FreeLancer.com)

Hope this helps.

abousetta

----------


## Whizbang

Do you seek a deep understanding of every part/function of the code or just how to apply it?
I learned by setting myself a task and then doing it. It is hard to seperate how I learned VBA from how I learned Excel, because I did them at the same time, more or less.  Most of my learning was either answering posts here on ExcelForum or by doing a project at work. I started out just trying to improve the workbooks at work, then as I ran into problems, I searched the web for a solution. This led to ExcelForum which led to answering and asking questions regularly for a couple of years.

For those that do VBA programming as a career; Do people see you in the office as a rockstar?
At first I was, because I started out as just an Ops personell who created some fancy workbooks on my own to help my workflow and the workflow of coworkers.  This lead to a promotion as an in-house developer. Once I got that role, people expected me to do magic, and the level of "rockstar" status actually went down.  There were many people who did appreciate my work verbally and enthusiastically, but the boss types saw it as me only doing my job.  This image illustrates how things became within a very short time.



What are the downfalls/challenges of not delivering on a project? 
Depends on the project, I suppose.  Once you start doing it for a living, you can usually tell what is possible and what is not possible long before crunch-time.  There is usually a design process that occurs where you decide what to include and what not to include. It is usually in this phase where you tell the customer/boss what to expect realistically.  Of course, there is always scope-creep, which can kill a project if you're not carefull.  But all of that is in the world of project management, not vba coding.

Are the best jobs out in California or New York?
No idea.  I live in southern New Hampshire.  All of the best jobs seem to be in Boston and surrounding areas, but I have managed to find work in rural areas as well.  The nice thing about Excel is that everyone uses it.  Most barely scratch the surface of what it can do. So, if you can convince someone that they need you to come in an re-design their workbooks, then you're good.  Small businesses are everywhere. It is just a matter of reaching out to them somehow.  The trick is to center your resume around your accomplishments rather than your work history. This helps hiring managers better visualize how you can help their company.

How do you know you've reached that point of proficiency?
When I can answer questions right off the bat without saying, "Let me look it up and get back to you".  There is still always a bit of research and development in any project, but when you are in the "idea" phase, and you can handle 90% of questions by the customer, then you know you're good.


After learning VBA, is it easier to learn other languages like Python or SQL?
I don’t know. I'm a one-trick pony.  I've read some books on VB.net and C++ and Python, and even gone through some tutorials on sites like CodeAcademy.com for different languages, but I haven't done any real-world projects in anything but VBA.  In concept, learning one language will help you learn others, but I've often heard (but do not know the truth of) that VBA can lead to bad programming practices that you can't get away with in the other languages. So, rather than just learning a new language, there is an element of un-learning as well.

----------


## abousetta

@Whizbang, to be honest I didn't read your post (too many lines of code, didn't use Option Explicit at the top, and you didn't declare your variables  :Wink: )... just kidding. Good stuff and loved the cartoon.

----------


## gsnidow

So here is my take.  Many folks here here are professional VBA or other code developers, but there are those of us who are simply "analysts", and our job is to provide analysis or solve problems any way we know how.  With that being said, I will say these things to some of your points:
1) I want to understand enough VBA to land a better job in finance. - If you can prove you are proficient with advanced Excel(non VBA) tasks, and at least have an understanding of VBA, that is going to get interest from an employer.  I've prepared a portfolio of stuff I can do, and in my last interview (for the job I've had for years now), when they asked "do you have anything you would like to ask us?"... My reply?  "Certainly, do you have a few minutes to look at some of the things I can do?"

2) How do you know you've reached that point of proficiency? - You'll know when you are able to start answering forum requests for help.  But seriously, if you are looking for certification, you can take all uncertainty out of the equation, because you will have to pass an exam.

3) After learning VBA, is it easier to learn other languages like Python or SQL? - Most definitely yes.  However, not necessarily SQL.  Many procedural programmers view SQL as a simplistic, easy to master language.  I can assure you that is not the case.  If you ever are to the point where you will be querying production databases, you need to make sure you know what you are doing.  One thing I "discovered" after messing with VBA was VBScript.  Once you get confortable with something like VBScript, you can do some truly awesome things.  I'll tell you, a little VBScript\VBA and some SQL know-how, and you can truly be the master of your office.

Plus its just good fun too.  Good luck

----------


## Olly

I'm not at the standard of many others on here, but one of my little measures of proficiency is when I am away from my PC, I draft some code on my PlayBook, then when I copy it onto a PC, it compiles, runs, and does what I wanted, first time. Makes me feel like I really understand what I am doing, rather than relying on the auto-syntax editing, Google and the forum for sense checking and confirming what I am writing  :Smilie: 

Not a rockstar yet, but my boss nicknames me "XL Superman", which pleases me  :Smilie:

----------


## xladept

@Olly - Back in the day when I was an operations supervisor, the programmers wanted to use the system for development continuously - I was steaming to get them to do what we called "desk checking" - You are doing it correctly - You *are* a rock star! :Smilie:

----------

