The savings _ from using your "in house" expertise _ in terms of money and man_hours alone, will quickly justify the investment you make in "developing the needed skills" _ especially, when you compare what you spend with the cost of purchasing a commercial software application _ or even engaging the services of an Excel VB developer.
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.
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.
I am keen to encourage individuals and organisations to explore using advanced MS Excel formulas and functions, in conjunction with Excel VBA programming, to develop customised spreadsheet applications that will solve typical problems end_users encounter daily in trying to record/analyse data and generate reports.