VBA is therefore different from the Standalone Visual Basic program used(by professional programmers) for developing commercial quality software applications _ though it borrows many of the latter's features. Think of Excel VBA as being the standalone Visual Basic software, built into Excel for the benefit of Excel users who are not necessarily programmers, but who are keen to exert more control over the application. So, Excel VB offers any interested users the necessary tools to make the application deliver more functionality. The final product is still an Excel document, but with extra functionalities added using VBA.
Spreadsheet Automation Facilitates EFFORTLESS Data Handling, Analysis & Report Generation! Sometimes people don't really care about learning(or using) all the "cool' advanced functions, formulas and techniques in the spreadsheet application they use for their work. They just want to punch in their relevant raw data _ at any time _ and immediately see the computed results generated by the spreadsheet in a manner that can facilitate their important decision making.
At times, they would prefer to click a button that says "Print ABC", or "Print XYZ" report, instead of having to crawl all over the huge spreadsheet(and get "lost" every now and then), to highlight and print different report pages. Using a custom built data entry form to make data entries into 14 different cells in different parts of a table(at the same time/with one click) would, for them, be "heaven" compared to making the entries one at a time.
You can choose to learn how to do it yourself _ or call in someone(an Excel VB Solutions Developer for instance) who knows how. Again, this would be dependent on your purpose, how proficient you are, and/or how much time you have at your disposal. Ultimately, even if someone develops a custom application for you, it should happen with YOUR guidance at every point to ensure that it does EXACTLY what you want it to do, and that you can easily _ with your developer's support/coaching _ learn how to make modifications to it in future, without needing to call back your developer.