VBA is an acronym for Visual Basic for Applications. VBA should not be confused with VB, which is standard Visual Basic. Visual Basic for Applications is a programming feature designed by Microsoft for use with their Microsoft Office software package. Specifically, it was designed for primary usage with Excel. VBA is a tool that can be used to create programs to be run in Excel.
What Does Excel Do?
Excel can allow you to do a variety of things within its programming structure such as keep lists of anything from customer names, to student grades. You also can use it for budgeting, data analysis, invoices, creating charts based on data streams and many other things as well. Excel is a staple in businesses.
What Does VBA Do?
VBA is a programming structure created to do essentially one thing. VBA allows you to automate Excel tasks. Everything you can do in Excel, you can do faster and without manual labor. For example, VBA programs can be created that will automatically format and print a sales report. You hit one key, and the entire process begins, without you having to go through all of the steps each time.
Advantages of VBA
Beyond the time saving function of VBA, there are many other advantages. With a VBA command, Excel will always execute a task in the exact same way. You get consistent results at much greater speed than you could do yourself. VBA allows you to create buttons to put in your menu bar, to execute the task. This means anybody can execute the task you want done, and get the same results you would get. If you need to perform the task multiple times, you can set it to do so, and walk away from your computer, knowing the work is getting done.
Disadvantages of VBA
There are some disadvantages that will deter most people. For starters, you need to learn to code, to use VBA. It's not a very intuitive program, that you can pick up over a weekend. You have to learn the various code forms, and figure out how to construct the task you want automated. VBA programs for Excel are also just that. They are VBA programs for Excel, which means that they are only transferable to other Excel programs. You can't use your programs in other applications. Also, if you code wrong, there can be glitches in the automation process, and you may need to go in and troubleshoot until you finally get it correct.
As Excel evolves, so must your VBA programs. VBA is a programming system based upon the current programming of your Excel version. If you upgrade your Excel, you may need to rewrite all of your VBA programs. This will happen rarely, as Excel is not updated frequently, but it still could happen. You'll need to constantly test your VBA programming to make sure it is still usable.